diff options
author | 2024-09-04 11:41:32 -1000 | |
---|---|---|
committer | 2024-09-04 11:41:32 -1000 | |
commit | 649e980dadee36f961738d054627225542d547a2 (patch) | |
tree | a67f0dc4ea53f03c85f5e0648f83f3ff0e4877f7 /kernel/bpf/bpf_struct_ops.c | |
parent | sched_ext: Add a cgroup scheduler which uses flattened hierarchy (diff) | |
parent | selftests/bpf: Do not update vmlinux.h unnecessarily (diff) | |
download | wireguard-linux-649e980dadee36f961738d054627225542d547a2.tar.xz wireguard-linux-649e980dadee36f961738d054627225542d547a2.zip |
Merge branch 'bpf/master' into for-6.12
Pull bpf/master to receive baebe9aaba1e ("bpf: allow passing struct
bpf_iter_<type> as kfunc arguments") and related changes in preparation for
the DSQ iterator patchset.
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/bpf/bpf_struct_ops.c')
-rw-r--r-- | kernel/bpf/bpf_struct_ops.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/kernel/bpf/bpf_struct_ops.c b/kernel/bpf/bpf_struct_ops.c index 0d515ec57aa5..fda3dd2ee984 100644 --- a/kernel/bpf/bpf_struct_ops.c +++ b/kernel/bpf/bpf_struct_ops.c @@ -837,7 +837,7 @@ static void bpf_struct_ops_map_seq_show_elem(struct bpf_map *map, void *key, btf_type_seq_show(st_map->btf, map->btf_vmlinux_value_type_id, value, m); - seq_puts(m, "\n"); + seq_putc(m, '\n'); } kfree(value); @@ -1040,6 +1040,13 @@ void bpf_struct_ops_put(const void *kdata) bpf_map_put(&st_map->map); } +int bpf_struct_ops_supported(const struct bpf_struct_ops *st_ops, u32 moff) +{ + void *func_ptr = *(void **)(st_ops->cfi_stubs + moff); + + return func_ptr ? 0 : -ENOTSUPP; +} + static bool bpf_struct_ops_valid_to_reg(struct bpf_map *map) { struct bpf_struct_ops_map *st_map = (struct bpf_struct_ops_map *)map; |