]> asedeno.scripts.mit.edu Git - linux.git/commit
tools lib bpf: Add bpf_object__pin()
authorJoe Stringer <joe@ovn.org>
Thu, 26 Jan 2017 21:19:58 +0000 (13:19 -0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 31 Jan 2017 19:20:06 +0000 (16:20 -0300)
commitd5148d8554d08f03b3e34ecc286ab1729c35c24c
tree748317494d2db58cc6750d143c0d0fa872c0106e
parentb6989f35e80bf830f8dc97b74128d619faef0273
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>
tools/lib/bpf/libbpf.c
tools/lib/bpf/libbpf.h