]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
uapi: update bpf.h from upstream
authorStephen Hemminger <stephen@networkplumber.org>
Wed, 22 Feb 2023 15:33:35 +0000 (07:33 -0800)
committerStephen Hemminger <stephen@networkplumber.org>
Wed, 22 Feb 2023 15:33:35 +0000 (07:33 -0800)
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
include/uapi/linux/bpf.h

index 4c909877592f83ff0d35ef94518161b8c41762bf..4b4d13a3d291bf90e418a0d9737f4f6b255cc816 100644 (file)
@@ -2801,7 +2801,7 @@ union bpf_attr {
  *
  * long bpf_perf_prog_read_value(struct bpf_perf_event_data *ctx, struct bpf_perf_event_value *buf, u32 buf_size)
  *     Description
- *             For en eBPF program attached to a perf event, retrieve the
+ *             For an eBPF program attached to a perf event, retrieve the
  *             value of the event counter associated to *ctx* and store it in
  *             the structure pointed by *buf* and of size *buf_size*. Enabled
  *             and running times are also stored in the structure (see
@@ -3134,6 +3134,11 @@ union bpf_attr {
  *             **BPF_FIB_LOOKUP_OUTPUT**
  *                     Perform lookup from an egress perspective (default is
  *                     ingress).
+ *             **BPF_FIB_LOOKUP_SKIP_NEIGH**
+ *                     Skip the neighbour table lookup. *params*->dmac
+ *                     and *params*->smac will not be set as output. A common
+ *                     use case is to call **bpf_redirect_neigh**\ () after
+ *                     doing **bpf_fib_lookup**\ ().
  *
  *             *ctx* is either **struct xdp_md** for XDP programs or
  *             **struct sk_buff** tc cls_act programs.
@@ -6750,6 +6755,7 @@ struct bpf_raw_tracepoint_args {
 enum {
        BPF_FIB_LOOKUP_DIRECT  = (1U << 0),
        BPF_FIB_LOOKUP_OUTPUT  = (1U << 1),
+       BPF_FIB_LOOKUP_SKIP_NEIGH = (1U << 2),
 };
 
 enum {
@@ -6917,6 +6923,17 @@ struct bpf_list_node {
        __u64 :64;
 } __attribute__((aligned(8)));
 
+struct bpf_rb_root {
+       __u64 :64;
+       __u64 :64;
+} __attribute__((aligned(8)));
+
+struct bpf_rb_node {
+       __u64 :64;
+       __u64 :64;
+       __u64 :64;
+} __attribute__((aligned(8)));
+
 struct bpf_sysctl {
        __u32   write;          /* Sysctl is being read (= 0) or written (= 1).
                                 * Allows 1,2,4-byte read, but no write.