History

Merge tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next

Daniel Borkmann says: ==================== pull-request: bpf-next 2023-08-25 We've added 87 non-merge commits during the last 8 day(s) which contain a total of 104 files changed, 3719 insertions(+), 4212 deletions(-). The main changes are: 1) Add multi uprobe BPF links for attaching multiple uprobes and usdt probes, which is significantly faster and saves extra fds, from Jiri Olsa. 2) Add support BPF cpu v4 instructions for arm64 JIT compiler, from Xu Kuohai. 3) Add support BPF cpu v4 instructions for riscv64 JIT compiler, from Pu Lehui. 4) Fix LWT BPF xmit hooks wrt their return values where propagating the result from skb_do_redirect() would trigger a use-after-free, from Yan Zhai. 5) Fix a BPF verifier issue related to bpf_kptr_xchg() with local kptr where the map's value kptr type and locally allocated obj type mismatch, from Yonghong Song. 6) Fix BPF verifier's check_func_arg_reg_off() function wrt graph root/node which bypassed reg->off == 0 enforcement, from Kumar Kartikeya Dwivedi. 7) Lift BPF verifier restriction in networking BPF programs to treat comparison of packet pointers not as a pointer leak, from Yafang Shao. 8) Remove unmaintained XDP BPF samples as they are maintained in xdp-tools repository out of tree, from Toke Høiland-Jørgensen. 9) Batch of fixes for the tracing programs from BPF samples in order to make them more libbpf-aware, from Daniel T. Lee. 10) Fix a libbpf signedness determination bug in the CO-RE relocation handling logic, from Andrii Nakryiko. 11) Extend libbpf to support CO-RE kfunc relocations. Also follow-up fixes for bpf_refcount shared ownership implementation, both from Dave Marchevsky. 12) Add a new bpf_object__unpin() API function to libbpf, from Daniel Xu. 13) Fix a memory leak in libbpf to also free btf_vmlinux when the bpf_object gets closed, from Hao Luo. 14) Small error output improvements to test_bpf module, from Helge Deller. * tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next: (87 commits) selftests/bpf: Add tests for rbtree API interaction in sleepable progs bpf: Allow bpf_spin_{lock,unlock} in sleepable progs bpf: Consider non-owning refs to refcounted nodes RCU protected bpf: Reenable bpf_refcount_acquire bpf: Use bpf_mem_free_rcu when bpf_obj_dropping refcounted nodes bpf: Consider non-owning refs trusted bpf: Ensure kptr_struct_meta is non-NULL for collection insert and refcount_acquire selftests/bpf: Enable cpu v4 tests for RV64 riscv, bpf: Support unconditional bswap insn riscv, bpf: Support signed div/mod insns riscv, bpf: Support 32-bit offset jmp insn riscv, bpf: Support sign-extension mov insns riscv, bpf: Support sign-extension load insns riscv, bpf: Fix missing exception handling and redundant zext for LDX_B/H/W samples/bpf: Add note to README about the XDP utilities moved to xdp-tools samples/bpf: Cleanup .gitignore samples/bpf: Remove the xdp_sample_pkts utility samples/bpf: Remove the xdp1 and xdp2 utilities samples/bpf: Remove the xdp_rxq_info utility samples/bpf: Remove the xdp_redirect* utilities ... ====================

Jakub Kicinski committed 3 years ago

Commit bebfbf02 parents 1fa6ffa ec0ded2104 files · +3719 −4212Browse files

Showing the changes to include/uapi (1 of 104 files). Show all

Unified · Split

include/uapi/linux/bpf.h+21−1
@@ -1039,6 +1039,7 @@ enum bpf_attach_type { · 1038 unmodified lines
1039 BPF_NETFILTER,1039 BPF_NETFILTER,
1040 BPF_TCX_INGRESS,1040 BPF_TCX_INGRESS,
1041 BPF_TCX_EGRESS,1041 BPF_TCX_EGRESS,
1042 BPF_TRACE_UPROBE_MULTI,
1042 __MAX_BPF_ATTACH_TYPE1043 __MAX_BPF_ATTACH_TYPE
1043};1044};
1044 1045
@@ -1057,6 +1058,7 @@ enum bpf_link_type { · 12 unmodified lines
1057 BPF_LINK_TYPE_STRUCT_OPS = 9,1058 BPF_LINK_TYPE_STRUCT_OPS = 9,
1058 BPF_LINK_TYPE_NETFILTER = 10,1059 BPF_LINK_TYPE_NETFILTER = 10,
1059 BPF_LINK_TYPE_TCX = 11,1060 BPF_LINK_TYPE_TCX = 11,
1061 BPF_LINK_TYPE_UPROBE_MULTI = 12,
1060 MAX_BPF_LINK_TYPE,1062 MAX_BPF_LINK_TYPE,
1061};1063};
1062 1064
@@ -1186,7 +1188,16 @@ enum bpf_perf_event_type { · 123 unmodified lines
1186/* link_create.kprobe_multi.flags used in LINK_CREATE command for1188/* link_create.kprobe_multi.flags used in LINK_CREATE command for
1187 * BPF_TRACE_KPROBE_MULTI attach type to create return probe.1189 * BPF_TRACE_KPROBE_MULTI attach type to create return probe.
1188 */1190 */
1189#define BPF_F_KPROBE_MULTI_RETURN (1U << 0)1191enum {
1192 BPF_F_KPROBE_MULTI_RETURN = (1U << 0)
1193};
1194
1195/* link_create.uprobe_multi.flags used in LINK_CREATE command for
1196 * BPF_TRACE_UPROBE_MULTI attach type to create return probe.
1197 */
1198enum {
1199 BPF_F_UPROBE_MULTI_RETURN = (1U << 0)
1200};
1190 1201
1191/* link_create.netfilter.flags used in LINK_CREATE command for1202/* link_create.netfilter.flags used in LINK_CREATE command for
1192 * BPF_PROG_TYPE_NETFILTER to enable IP packet defragmentation.1203 * BPF_PROG_TYPE_NETFILTER to enable IP packet defragmentation.
@@ -1624,6 +1635,15 @@ union bpf_attr { · 431 unmodified lines
1624 };1635 };
1625 __u64 expected_revision;1636 __u64 expected_revision;
1626 } tcx;1637 } tcx;
1638 struct {
1639 __aligned_u64 path;
1640 __aligned_u64 offsets;
1641 __aligned_u64 ref_ctr_offsets;
1642 __aligned_u64 cookies;
1643 __u32 cnt;
1644 __u32 flags;
1645 __u32 pid;
1646 } uprobe_multi;
1627 };1647 };
1628 } link_create;1648 } link_create;
1629 1649

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t