Fix BPF helpers documentation
Subsystems (3)
cover Fix BPF helpers documentation
BPF helpers documentation in UAPI refers to kernel ctx structures when it has to refer to user visible ones. Fix it.
Andrey Ignatov (2):
bpf: Fix helpers ctx struct types in uapi doc
bpf: Sync bpf.h to tools/
include/uapi/linux/bpf.h | 12 ++++++------ tools/include/uapi/linux/bpf.h | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-)
Signature · 1 line
2.9.5
PATCH 1/2 bpf: Fix helpers ctx struct types in uapi doc
Helpers may operate on two types of ctx structures: user visible ones (e.g. struct bpf_sock_ops) when used in user programs, and kernel ones (e.g. struct bpf_sock_ops_kern) in kernel implementation.
UAPI documentation must refer to only user visible structures.
The patch replaces references to _kern structures in BPF helpers description by corresponding user visible structures.
--- include/uapi/linux/bpf.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
include/uapi/linux/bpf.h +6 -6
@@ -1361,7 +1361,7 @@ union bpf_attr {* Return * 0 * -* int bpf_setsockopt(struct bpf_sock_ops_kern *bpf_socket, int level, int optname, char *optval, int optlen) +* int bpf_setsockopt(struct bpf_sock_ops *bpf_socket, int level, int optname, char *optval, int optlen) * Description * Emulate a call to **setsockopt()** on the socket associated to * *bpf_socket*, which must be a full socket. The *level* at
@@ -1435,7 +1435,7 @@ union bpf_attr {* Return * **SK_PASS** on success, or **SK_DROP** on error. * -* int bpf_sock_map_update(struct bpf_sock_ops_kern *skops, struct bpf_map *map, void *key, u64 flags) +* int bpf_sock_map_update(struct bpf_sock_ops *skops, struct bpf_map *map, void *key, u64 flags) * Description * Add an entry to, or update a *map* referencing sockets. The * *skops* is used as a new value for the entry associated to
@@ -1533,7 +1533,7 @@ union bpf_attr {* Return * 0 on success, or a negative error in case of failure. * -* int bpf_perf_prog_read_value(struct bpf_perf_event_data_kern *ctx, struct bpf_perf_event_value *buf, u32 buf_size) +* int 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 * value of the event counter associated to *ctx* and store it in
@@ -1544,7 +1544,7 @@ union bpf_attr {* Return * 0 on success, or a negative error in case of failure. * -* int bpf_getsockopt(struct bpf_sock_ops_kern *bpf_socket, int level, int optname, char *optval, int optlen) +* int bpf_getsockopt(struct bpf_sock_ops *bpf_socket, int level, int optname, char *optval, int optlen) * Description * Emulate a call to **getsockopt()** on the socket associated to * *bpf_socket*, which must be a full socket. The *level* at
@@ -1588,7 +1588,7 @@ union bpf_attr {* Return * 0 * -* int bpf_sock_ops_cb_flags_set(struct bpf_sock_ops_kern *bpf_sock, int argval) +* int bpf_sock_ops_cb_flags_set(struct bpf_sock_ops *bpf_sock, int argval) * Description * Attempt to set the value of the **bpf_sock_ops_cb_flags** field * for the full TCP socket associated to *bpf_sock_ops* to
@@ -1721,7 +1721,7 @@ union bpf_attr {* Return * 0 on success, or a negative error in case of failure. * -* int bpf_bind(struct bpf_sock_addr_kern *ctx, struct sockaddr *addr, int addr_len) +* int bpf_bind(struct bpf_sock_addr *ctx, struct sockaddr *addr, int addr_len) * Description * Bind the socket associated to *ctx* to the address pointed by * *addr*, of length *addr_len*. This allows for making outgoing
Signature · 1 line
2.9.5
PATCH 2/2 bpf: Sync bpf.h to tools/
In reply to Andrey IgnatovThe patch syncs bpf.h to tools/.
--- tools/include/uapi/linux/bpf.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
tools/include/uapi/linux/bpf.h +6 -6
@@ -1361,7 +1361,7 @@ union bpf_attr {* Return * 0 * -* int bpf_setsockopt(struct bpf_sock_ops_kern *bpf_socket, int level, int optname, char *optval, int optlen) +* int bpf_setsockopt(struct bpf_sock_ops *bpf_socket, int level, int optname, char *optval, int optlen) * Description * Emulate a call to **setsockopt()** on the socket associated to * *bpf_socket*, which must be a full socket. The *level* at
@@ -1435,7 +1435,7 @@ union bpf_attr {* Return * **SK_PASS** on success, or **SK_DROP** on error. * -* int bpf_sock_map_update(struct bpf_sock_ops_kern *skops, struct bpf_map *map, void *key, u64 flags) +* int bpf_sock_map_update(struct bpf_sock_ops *skops, struct bpf_map *map, void *key, u64 flags) * Description * Add an entry to, or update a *map* referencing sockets. The * *skops* is used as a new value for the entry associated to
@@ -1533,7 +1533,7 @@ union bpf_attr {* Return * 0 on success, or a negative error in case of failure. * -* int bpf_perf_prog_read_value(struct bpf_perf_event_data_kern *ctx, struct bpf_perf_event_value *buf, u32 buf_size) +* int 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 * value of the event counter associated to *ctx* and store it in
@@ -1544,7 +1544,7 @@ union bpf_attr {* Return * 0 on success, or a negative error in case of failure. * -* int bpf_getsockopt(struct bpf_sock_ops_kern *bpf_socket, int level, int optname, char *optval, int optlen) +* int bpf_getsockopt(struct bpf_sock_ops *bpf_socket, int level, int optname, char *optval, int optlen) * Description * Emulate a call to **getsockopt()** on the socket associated to * *bpf_socket*, which must be a full socket. The *level* at
@@ -1588,7 +1588,7 @@ union bpf_attr {* Return * 0 * -* int bpf_sock_ops_cb_flags_set(struct bpf_sock_ops_kern *bpf_sock, int argval) +* int bpf_sock_ops_cb_flags_set(struct bpf_sock_ops *bpf_sock, int argval) * Description * Attempt to set the value of the **bpf_sock_ops_cb_flags** field * for the full TCP socket associated to *bpf_sock_ops* to
@@ -1721,7 +1721,7 @@ union bpf_attr {* Return * 0 on success, or a negative error in case of failure. * -* int bpf_bind(struct bpf_sock_addr_kern *ctx, struct sockaddr *addr, int addr_len) +* int bpf_bind(struct bpf_sock_addr *ctx, struct sockaddr *addr, int addr_len) * Description * Bind the socket associated to *ctx* to the address pointed by * *addr*, of length *addr_len*. This allows for making outgoing
Signature · 1 line
2.9.5
Quoted 10 lines · Andrey Ignatov
BPF helpers documentation in UAPI refers to kernel ctx structures when it has to refer to user visible ones. Fix it.
Andrey Ignatov (2):
bpf: Fix helpers ctx struct types in uapi doc
bpf: Syncbpf.htotools/include/uapi/linux/bpf.h | 12 ++++++------ tools/include/uapi/linux/bpf.h | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-)
Correct. Thanks a lot for the fix, Andrey!
Alexei Starovoitov
AppliedQuoted 8 lines · Quentin Monnet
Quoted 7 lines · Andrey Ignatov
BPF helpers documentation in UAPI refers to kernel ctx structures when it has to refer to user visible ones. Fix it.
Andrey Ignatov (2):
bpf: Fix helpers ctx struct types in uapi doc
bpf: Syncbpf.htotools/
Quoted 6 lines
Quoted 3 lines
include/uapi/linux/bpf.h | 12 ++++++------ tools/include/uapi/linux/bpf.h | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-)Correct. Thanks a lot for the fix, Andrey!
Reviewed-by Quentin Monnet <[email protected]>
Applied, Thanks Andrey.