Files
kernel/include/uapi/linux
Jesper Dangaard Brouer 281920b7e0 bpf: Devmap adjust uapi for attach bpf program
V2:
- Defer changing BPF-syscall to start at file-descriptor 1
- Use {} to zero initialise struct.

The recent commit fbee97feed ("bpf: Add support to attach bpf program to a
devmap entry"), introduced ability to attach (and run) a separate XDP
bpf_prog for each devmap entry. A bpf_prog is added via a file-descriptor.
As zero were a valid FD, not using the feature requires using value minus-1.
The UAPI is extended via tail-extending struct bpf_devmap_val and using
map->value_size to determine the feature set.

This will break older userspace applications not using the bpf_prog feature.
Consider an old userspace app that is compiled against newer kernel
uapi/bpf.h, it will not know that it need to initialise the member
bpf_prog.fd to minus-1. Thus, users will be forced to update source code to
get program running on newer kernels.

This patch remove the minus-1 checks, and have zero mean feature isn't used.

Followup patches either for kernel or libbpf should handle and avoid
returning file-descriptor zero in the first place.

Fixes: fbee97feed ("bpf: Add support to attach bpf program to a devmap entry")
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/159170950687.2102545.7235914718298050113.stgit@firesoul
2020-06-09 11:36:18 -07:00
..
2020-05-28 11:22:14 +02:00
2019-12-18 18:07:31 +01:00
2019-10-09 22:31:14 -04:00
2019-09-25 17:51:39 -07:00
2019-08-02 14:44:02 +10:00
2020-06-01 11:49:23 -07:00
2020-04-27 16:29:41 +05:30
2020-05-14 16:44:25 +02:00
2019-08-12 19:33:50 -07:00
2019-12-11 15:31:52 +01:00
2020-04-20 12:43:24 -07:00
2020-05-17 14:10:07 -06:00
2019-09-08 15:37:04 +02:00
2020-05-01 10:00:19 -04:00
2020-05-21 08:20:35 -06:00
2020-03-29 22:30:57 -07:00
2020-02-07 14:39:38 +09:00
2019-08-19 13:04:45 -07:00
2020-03-29 22:14:49 -07:00
2020-01-18 09:19:18 -05:00
2019-10-02 20:32:27 -06:00
2019-07-30 20:34:34 +02:00
2020-05-21 17:04:07 -07:00
2020-03-29 22:30:57 -07:00
2020-01-26 15:28:47 +01:00
2019-12-18 18:07:31 +01:00
2020-01-04 13:49:51 +08:00
2019-12-09 09:59:07 +01:00
2020-03-29 23:29:08 +02:00
2020-04-02 10:41:40 -04:00
2019-09-18 20:17:50 +02:00
2019-08-01 21:49:46 +02:00
2020-04-20 07:26:42 +02:00