[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191218052552.2915188-1-andriin@fb.com>
Date: Tue, 17 Dec 2019 21:25:49 -0800
From: Andrii Nakryiko <andriin@...com>
To: <bpf@...r.kernel.org>, <netdev@...r.kernel.org>, <ast@...com>,
<daniel@...earbox.net>
CC: <andrii.nakryiko@...il.com>, <kernel-team@...com>,
Andrii Nakryiko <andriin@...com>
Subject: [PATCH v3 bpf-next 0/3] Skeleton improvements and documentation
Simplify skeleton usage by embedding source BPF object file inside skeleton
itself. This allows to keep skeleton and object file in sync at all times with
no chance of confusion.
Also, add bpftool-gen.rst manpage, explaining concepts and ideas behind
skeleton. In examples section it also includes a complete small BPF
application utilizing skeleton, as a demonstration of API.
Patch #2 also removes BPF_EMBED_OBJ, as there is currently no use of it.
v2->v3:
- (void) in no-args function (Alexei);
- bpftool-gen.rst code block formatting fix (Alexei);
- simplified xxx__create_skeleton to fill in obj and return error code;
v1->v2:
- remove whitespace from empty lines in code blocks (Yonghong).
Andrii Nakryiko (3):
bpftool, selftests/bpf: embed object file inside skeleton
libbpf: remove BPF_EMBED_OBJ macro from libbpf.h
bpftool: add gen subcommand manpage
.../bpf/bpftool/Documentation/bpftool-gen.rst | 304 ++++++++++++++++++
tools/bpf/bpftool/Documentation/bpftool.rst | 3 +-
tools/bpf/bpftool/gen.c | 232 ++++++++-----
tools/lib/bpf/libbpf.h | 35 --
.../selftests/bpf/prog_tests/attach_probe.c | 4 +-
.../selftests/bpf/prog_tests/core_extern.c | 4 +-
.../selftests/bpf/prog_tests/fentry_fexit.c | 10 +-
.../selftests/bpf/prog_tests/fentry_test.c | 7 +-
tools/testing/selftests/bpf/prog_tests/mmap.c | 4 +-
.../selftests/bpf/prog_tests/skeleton.c | 4 +-
.../bpf/prog_tests/stacktrace_build_id.c | 4 +-
.../bpf/prog_tests/stacktrace_build_id_nmi.c | 4 +-
12 files changed, 460 insertions(+), 155 deletions(-)
create mode 100644 tools/bpf/bpftool/Documentation/bpftool-gen.rst
--
2.17.1
Powered by blists - more mailing lists