History

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

Pull bpf updates from Alexei Starovoitov: - Add BPF uprobe session support (Jiri Olsa) - Optimize uprobe performance (Andrii Nakryiko) - Add bpf_fastcall support to helpers and kfuncs (Eduard Zingerman) - Avoid calling free_htab_elem() under hash map bucket lock (Hou Tao) - Prevent tailcall infinite loop caused by freplace (Leon Hwang) - Mark raw_tracepoint arguments as nullable (Kumar Kartikeya Dwivedi) - Introduce uptr support in the task local storage map (Martin KaFai Lau) - Stringify errno log messages in libbpf (Mykyta Yatsenko) - Add kmem_cache BPF iterator for perf's lock profiling (Namhyung Kim) - Support BPF objects of either endianness in libbpf (Tony Ambardar) - Add ksym to struct_ops trampoline to fix stack trace (Xu Kuohai) - Introduce private stack for eligible BPF programs (Yonghong Song) - Migrate samples/bpf tests to selftests/bpf test_progs (Daniel T. Lee) - Migrate test_sock to selftests/bpf test_progs (Jordan Rife) * tag 'bpf-next-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next: (152 commits) libbpf: Change hash_combine parameters from long to unsigned long selftests/bpf: Fix build error with llvm 19 libbpf: Fix memory leak in bpf_program__attach_uprobe_multi bpf: use common instruction history across all states bpf: Add necessary migrate_disable to range_tree. bpf: Do not alloc arena on unsupported arches selftests/bpf: Set test path for token/obj_priv_implicit_token_envvar selftests/bpf: Add a test for arena range tree algorithm bpf: Introduce range_tree data structure and use it in bpf arena samples/bpf: Remove unused variable in xdp2skb_meta_kern.c samples/bpf: Remove unused variables in tc_l2_redirect_kern.c bpftool: Cast variable `var` to long long bpf, x86: Propagate tailcall info only for subprogs bpf: Add kernel symbol for struct_ops trampoline bpf: Use function pointers count as struct_ops links count bpf: Remove unused member rcu from bpf_struct_ops_map selftests/bpf: Add struct_ops prog private stack tests bpf: Support private stack for struct_ops progs selftests/bpf: Add tracing prog private stack tests bpf, x86: Support private stack in jit ...

Linus Torvalds committed 1 year ago

Commit 6e95ef02 parents 43fb83c 2c8b09a211 files · +6961 −3473Browse files

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

Unified · Split

include/uapi/linux/bpf.h+4−5
@@ -1116,6 +1116,7 @@ enum bpf_attach_type { · 1115 unmodified lines
1116 BPF_NETKIT_PRIMARY,1116 BPF_NETKIT_PRIMARY,
1117 BPF_NETKIT_PEER,1117 BPF_NETKIT_PEER,
1118 BPF_TRACE_KPROBE_SESSION,1118 BPF_TRACE_KPROBE_SESSION,
1119 BPF_TRACE_UPROBE_SESSION,
1119 __MAX_BPF_ATTACH_TYPE1120 __MAX_BPF_ATTACH_TYPE
1120};1121};
1121 1122
@@ -1973,6 +1974,8 @@ union bpf_attr { · 851 unmodified lines
1973 * program.1974 * program.
1974 * Return1975 * Return
1975 * The SMP id of the processor running the program.1976 * The SMP id of the processor running the program.
1977 * Attributes
1978 * __bpf_fastcall
1976 *1979 *
1977 * long bpf_skb_store_bytes(struct sk_buff *skb, u32 offset, const void *from, u32 len, u64 flags)1980 * long bpf_skb_store_bytes(struct sk_buff *skb, u32 offset, const void *from, u32 len, u64 flags)
1978 * Description1981 * Description
@@ -3104,10 +3107,6 @@ union bpf_attr { · 1125 unmodified lines
3104 * with the **CONFIG_BPF_KPROBE_OVERRIDE** configuration3107 * with the **CONFIG_BPF_KPROBE_OVERRIDE** configuration
3105 * option, and in this case it only works on functions tagged with3108 * option, and in this case it only works on functions tagged with
3106 * **ALLOW_ERROR_INJECTION** in the kernel code.3109 * **ALLOW_ERROR_INJECTION** in the kernel code.
3107 *
3108 * Also, the helper is only available for the architectures having
3109 * the CONFIG_FUNCTION_ERROR_INJECTION option. As of this writing,
3110 * x86 architecture is the only one to support this feature.
3111 * Return3110 * Return
3112 * 03111 * 0
3113 *3112 *
@@ -5372,7 +5371,7 @@ union bpf_attr { · 2258 unmodified lines
5372 * Currently, the **flags** must be 0. Currently, nr_loops is5371 * Currently, the **flags** must be 0. Currently, nr_loops is
5373 * limited to 1 << 23 (~8 million) loops.5372 * limited to 1 << 23 (~8 million) loops.
5374 *5373 *
5375 * long (\*callback_fn)(u32 index, void \*ctx);5374 * long (\*callback_fn)(u64 index, void \*ctx);
5376 *5375 *
5377 * where **index** is the current index in the loop. The index5376 * where **index** is the current index in the loop. The index
5378 * is zero-indexed.5377 * is zero-indexed.