summaryrefslogtreecommitdiffstats
path: root/tools/lib/bpf/bpf.c
diff options
context:
space:
mode:
authorDavid Beckett2018-05-16 23:02:49 +0200
committerDaniel Borkmann2018-05-17 00:54:26 +0200
commitf0307a7ed17fa8925321a4f58f5ca56eeedd4fa3 (patch)
tree49c56445e06a7feed53aacd70eb8cef39ebc40f2 /tools/lib/bpf/bpf.c
parentbpf: add __printf verification to bpf_verifier_vlog (diff)
downloadkernel-qcow2-linux-f0307a7ed17fa8925321a4f58f5ca56eeedd4fa3.tar.gz
kernel-qcow2-linux-f0307a7ed17fa8925321a4f58f5ca56eeedd4fa3.tar.xz
kernel-qcow2-linux-f0307a7ed17fa8925321a4f58f5ca56eeedd4fa3.zip
libbpf: add ifindex to enable offload support
BPF programs currently can only be offloaded using iproute2. This patch will allow programs to be offloaded using libbpf calls. Signed-off-by: David Beckett <david.beckett@netronome.com> Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to 'tools/lib/bpf/bpf.c')
-rw-r--r--tools/lib/bpf/bpf.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/lib/bpf/bpf.c b/tools/lib/bpf/bpf.c
index a3a8fb2ac697..6a8a00097fd8 100644
--- a/tools/lib/bpf/bpf.c
+++ b/tools/lib/bpf/bpf.c
@@ -91,6 +91,7 @@ int bpf_create_map_xattr(const struct bpf_create_map_attr *create_attr)
attr.btf_fd = create_attr->btf_fd;
attr.btf_key_id = create_attr->btf_key_id;
attr.btf_value_id = create_attr->btf_value_id;
+ attr.map_ifindex = create_attr->map_ifindex;
return sys_bpf(BPF_MAP_CREATE, &attr, sizeof(attr));
}
@@ -201,6 +202,7 @@ int bpf_load_program_xattr(const struct bpf_load_program_attr *load_attr,
attr.log_size = 0;
attr.log_level = 0;
attr.kern_version = load_attr->kern_version;
+ attr.prog_ifindex = load_attr->prog_ifindex;
memcpy(attr.prog_name, load_attr->name,
min(name_len, BPF_OBJ_NAME_LEN - 1));