Re: [PATCH bpf-next v3 01/21] bpf: implement an interface to register bpf_iter targets

Andrii Nakryiko
2020-05-08T18:19:09Z

On Wed, May 6, 2020 at 10:39 PM Yonghong Song <yhs@fb.com> wrote:
>
> The target can call bpf_iter_reg_target() to register itself.
> The needed information:
> target: target name
> seq_ops: the seq_file operations for the target
> init_seq_private target callback to initialize seq_priv during file open
> fini_seq_private target callback to clean up seq_priv during file release
> seq_priv_size: the private_data size needed by the seq_file
> operations
>
> The target name represents a target which provides a seq_ops
> for iterating objects.
>
> The target can provide two callback functions, init_seq_private
> and fini_seq_private, called during file open/release time.
> For example, /proc/net/{tcp6, ipv6_route, netlink, ...}, net
> name space needs to be setup properly during file open and
> released properly during file release.
>
> Function bpf_iter_unreg_target() is also implemented to unregister
> a particular target.
>
> Signed-off-by: Yonghong Song <yhs@fb.com>
> ---

Lost my initial ack? :) Here we go again:

Acked-by: Andrii Nakryiko <andriin@fb.com>

> include/linux/bpf.h | 15 +++++++++++
> kernel/bpf/Makefile | 2 +-
> kernel/bpf/bpf_iter.c | 59 +++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 75 insertions(+), 1 deletion(-)
> create mode 100644 kernel/bpf/bpf_iter.c
> …