aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lib/bpf/libbpf.h
diff options
context:
space:
mode:
authorJoe Stringer <joe@ovn.org>2017-01-26 16:19:58 -0500
committerArnaldo Carvalho de Melo <acme@redhat.com>2017-01-31 14:20:06 -0500
commitd5148d8554d08f03b3e34ecc286ab1729c35c24c (patch)
tree748317494d2db58cc6750d143c0d0fa872c0106e /tools/lib/bpf/libbpf.h
parentb6989f35e80bf830f8dc97b74128d619faef0273 (diff)
tools lib bpf: Add bpf_object__pin()
Add a new API to pin a BPF object to the filesystem. The user can specify the path within a BPF filesystem to pin the object. Programs will be pinned under a subdirectory named the same as the program, with each instance appearing as a numbered file under that directory, and maps will be pinned under the path using the name of the map as the file basename. For example, with the directory '/sys/fs/bpf/foo' and a BPF object which contains two instances of a program named 'bar', and a map named 'baz': /sys/fs/bpf/foo/bar/0 /sys/fs/bpf/foo/bar/1 /sys/fs/bpf/foo/baz Signed-off-by: Joe Stringer <joe@ovn.org> Cc: Alexei Starovoitov <ast@fb.com> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: Wang Nan <wangnan0@huawei.com> Cc: netdev@vger.kernel.org Link: http://lkml.kernel.org/r/20170126212001.14103-4-joe@ovn.org [ Check snprintf >= for truncation, as snprintf(bf, size, ...) == size also means truncation ] Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/lib/bpf/libbpf.h')
-rw-r--r--tools/lib/bpf/libbpf.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/lib/bpf/libbpf.h b/tools/lib/bpf/libbpf.h
index 2addf9d5b13c..b30394f9947a 100644
--- a/tools/lib/bpf/libbpf.h
+++ b/tools/lib/bpf/libbpf.h
@@ -65,6 +65,7 @@ struct bpf_object *bpf_object__open(const char *path);
65struct bpf_object *bpf_object__open_buffer(void *obj_buf, 65struct bpf_object *bpf_object__open_buffer(void *obj_buf,
66 size_t obj_buf_sz, 66 size_t obj_buf_sz,
67 const char *name); 67 const char *name);
68int bpf_object__pin(struct bpf_object *object, const char *path);
68void bpf_object__close(struct bpf_object *object); 69void bpf_object__close(struct bpf_object *object);
69 70
70/* Load/unload object into/from kernel */ 71/* Load/unload object into/from kernel */