Alexei Starovoitov says: ==================== The following pull-request contains BPF updates for your *net-next* tree. We've added 73 non-merge commits during the last 9 day(s) which contain a total of 79 files changed, 5275 insertions(+), 600 deletions(-). The main changes are: 1) Basic BTF validation in libbpf, from Andrii Nakryiko. 2) bpf_assert(), bpf_throw(), exceptions in bpf progs, from Kumar Kartikeya Dwivedi. 3) next_thread cleanups, from Oleg Nesterov. 4) Add mcpu=v4 support to arm32, from Puranjay Mohan. 5) Add support for __percpu pointers in bpf progs, from Yonghong Song. 6) Fix bpf tailcall interaction with bpf trampoline, from Leon Hwang. 7) Raise irq_work in bpf_mem_alloc while irqs are disabled to improve refill probabablity, from Hou Tao. Please consider pulling these changes from: git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git Thanks a lot! Also thanks to reporters, reviewers and testers of commits in this pull-request: Alan Maguire, Andrey Konovalov, Dave Marchevsky, "Eric W. Biederman", Jiri Olsa, Maciej Fijalkowski, Quentin Monnet, Russell King (Oracle), Song Liu, Stanislav Fomichev, Yonghong Song ====================
Showing the changes to include/uapi (2 of 79 files). Show all
Unified · Split
| @@ -932,7 +932,14 @@ enum bpf_map_type { · 931 unmodified lines | |||
| 932 | */ | 932 | */ |
| 933 | BPF_MAP_TYPE_CGROUP_STORAGE = BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED, | 933 | BPF_MAP_TYPE_CGROUP_STORAGE = BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED, |
| 934 | BPF_MAP_TYPE_REUSEPORT_SOCKARRAY, | 934 | BPF_MAP_TYPE_REUSEPORT_SOCKARRAY, |
| 935 | BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE, | 935 | BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE_DEPRECATED, |
| 936 | /* BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE is available to bpf programs | ||
| 937 | * attaching to a cgroup. The new mechanism (BPF_MAP_TYPE_CGRP_STORAGE + | ||
| 938 | * local percpu kptr) supports all BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE | ||
| 939 | * functionality and more. So mark * BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE | ||
| 940 | * deprecated. | ||
| 941 | */ | ||
| 942 | BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE_DEPRECATED, | ||
| 936 | BPF_MAP_TYPE_QUEUE, | 943 | BPF_MAP_TYPE_QUEUE, |
| 937 | BPF_MAP_TYPE_STACK, | 944 | BPF_MAP_TYPE_STACK, |
| 938 | BPF_MAP_TYPE_SK_STORAGE, | 945 | BPF_MAP_TYPE_SK_STORAGE, |
| @@ -38,11 +38,27 @@ enum netdev_xdp_act { · 37 unmodified lines | |||
| 38 | NETDEV_XDP_ACT_MASK = 127, | 38 | NETDEV_XDP_ACT_MASK = 127, |
| 39 | }; | 39 | }; |
| 40 | 40 | ||
| 41 | /** | ||
| 42 | * enum netdev_xdp_rx_metadata | ||
| 43 | * @NETDEV_XDP_RX_METADATA_TIMESTAMP: Device is capable of exposing receive HW | ||
| 44 | * timestamp via bpf_xdp_metadata_rx_timestamp(). | ||
| 45 | * @NETDEV_XDP_RX_METADATA_HASH: Device is capable of exposing receive packet | ||
| 46 | * hash via bpf_xdp_metadata_rx_hash(). | ||
| 47 | */ | ||
| 48 | enum netdev_xdp_rx_metadata { | ||
| 49 | NETDEV_XDP_RX_METADATA_TIMESTAMP = 1, | ||
| 50 | NETDEV_XDP_RX_METADATA_HASH = 2, | ||
| 51 | |||
| 52 | /* private: */ | ||
| 53 | NETDEV_XDP_RX_METADATA_MASK = 3, | ||
| 54 | }; | ||
| 55 | |||
| 41 | enum { | 56 | enum { |
| 42 | NETDEV_A_DEV_IFINDEX = 1, | 57 | NETDEV_A_DEV_IFINDEX = 1, |
| 43 | NETDEV_A_DEV_PAD, | 58 | NETDEV_A_DEV_PAD, |
| 44 | NETDEV_A_DEV_XDP_FEATURES, | 59 | NETDEV_A_DEV_XDP_FEATURES, |
| 45 | NETDEV_A_DEV_XDP_ZC_MAX_SEGS, | 60 | NETDEV_A_DEV_XDP_ZC_MAX_SEGS, |
| 61 | NETDEV_A_DEV_XDP_RX_METADATA_FEATURES, | ||
| 46 | 62 | ||
| 47 | __NETDEV_A_DEV_MAX, | 63 | __NETDEV_A_DEV_MAX, |
| 48 | NETDEV_A_DEV_MAX = (__NETDEV_A_DEV_MAX - 1) | 64 | NETDEV_A_DEV_MAX = (__NETDEV_A_DEV_MAX - 1) |