On Mon, May 25, 2020 at 3:57 PM John Fastabend <john.fastab...@gmail.com> wrote:
>
> Daniel Borkmann wrote:
> > On 5/24/20 6:50 PM, John Fastabend wrote:
> > > Add these generic helpers that may be useful to use from sk_msg programs.
> > > The helpers do not depend on ctx so we can simply add them here,
> > >
> > >   BPF_FUNC_perf_event_output
> > >   BPF_FUNC_get_current_uid_gid
> > >   BPF_FUNC_get_current_pid_tgid
> > >   BPF_FUNC_get_current_comm
> >
> > Hmm, added helpers below are what you list here except get_current_comm.
> > Was this forgotten to be added here?
>
> Forgot to update commit messages. I dropped it because it wasn't clear to
> me it was very useful or how I would use it from this context. I figure we
> can add it later if its needed.

But it's also not harmful in any way and is in a similar group as
get_current_pid_tgid. So let's add it sooner rather than later. There
is no cost in allowing this, right?

>
> >
> > >   BPF_FUNC_get_current_cgroup_id
> > >   BPF_FUNC_get_current_ancestor_cgroup_id
> > >   BPF_FUNC_get_cgroup_classid
> > >
> > > Acked-by: Yonghong Song <y...@fb.com>
> > > Signed-off-by: John Fastabend <john.fastab...@gmail.com>
> > > ---
> > >   net/core/filter.c |   16 ++++++++++++++++
> > >   1 file changed, 16 insertions(+)
> > >
> > > diff --git a/net/core/filter.c b/net/core/filter.c
> > > index 822d662..a56046a 100644
> > > --- a/net/core/filter.c
> > > +++ b/net/core/filter.c
> > > @@ -6443,6 +6443,22 @@ sk_msg_func_proto(enum bpf_func_id func_id, const 
> > > struct bpf_prog *prog)
> > >             return &bpf_msg_push_data_proto;
> > >     case BPF_FUNC_msg_pop_data:
> > >             return &bpf_msg_pop_data_proto;
> > > +   case BPF_FUNC_perf_event_output:
> > > +           return &bpf_event_output_data_proto;
> > > +   case BPF_FUNC_get_current_uid_gid:
> > > +           return &bpf_get_current_uid_gid_proto;
> > > +   case BPF_FUNC_get_current_pid_tgid:
> > > +           return &bpf_get_current_pid_tgid_proto;
> > > +#ifdef CONFIG_CGROUPS
> > > +   case BPF_FUNC_get_current_cgroup_id:
> > > +           return &bpf_get_current_cgroup_id_proto;
> > > +   case BPF_FUNC_get_current_ancestor_cgroup_id:
> > > +           return &bpf_get_current_ancestor_cgroup_id_proto;
> > > +#endif
> > > +#ifdef CONFIG_CGROUP_NET_CLASSID
> > > +   case BPF_FUNC_get_cgroup_classid:
> > > +           return &bpf_get_cgroup_classid_curr_proto;
> > > +#endif
> > >     default:
> > >             return bpf_base_func_proto(func_id);
> > >     }
> > >
> >
>
>

Reply via email to