(2015/03/21 8:30), Alexei Starovoitov wrote: > From: Daniel Borkmann <daniel@xxxxxxxxxxxxx> > > Socket filter code and other subsystems with upcoming eBPF support should > not need to deal with the fact that we have CONFIG_BPF_SYSCALL defined or > not. > > Having the bpf syscall as a config option is a nice thing and I'd expect > it to stay that way for expert users (I presume one day the default setting > of it might change, though), but code making use of it should not care if > it's actually enabled or not. > > Instead, hide this via header files and let the rest deal with it. > Looks good to me. Reviewed-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx> Thank you, > Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx> > Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx> > --- > include/linux/bpf.h | 20 ++++++++++++++++---- > 1 file changed, 16 insertions(+), 4 deletions(-) > > diff --git a/include/linux/bpf.h b/include/linux/bpf.h > index bbfceb756452..c2e21113ecc0 100644 > --- a/include/linux/bpf.h > +++ b/include/linux/bpf.h > @@ -113,8 +113,6 @@ struct bpf_prog_type_list { > enum bpf_prog_type type; > }; > > -void bpf_register_prog_type(struct bpf_prog_type_list *tl); > - > struct bpf_prog; > > struct bpf_prog_aux { > @@ -129,11 +127,25 @@ struct bpf_prog_aux { > }; > > #ifdef CONFIG_BPF_SYSCALL > +void bpf_register_prog_type(struct bpf_prog_type_list *tl); > + > void bpf_prog_put(struct bpf_prog *prog); > +struct bpf_prog *bpf_prog_get(u32 ufd); > #else > -static inline void bpf_prog_put(struct bpf_prog *prog) {} > +static inline void bpf_register_prog_type(struct bpf_prog_type_list *tl) > +{ > +} > + > +static inline struct bpf_prog *bpf_prog_get(u32 ufd) > +{ > + return ERR_PTR(-EOPNOTSUPP); > +} > + > +static inline void bpf_prog_put(struct bpf_prog *prog) > +{ > +} > #endif > -struct bpf_prog *bpf_prog_get(u32 ufd); > + > /* verify correctness of eBPF program */ > int bpf_check(struct bpf_prog *fp, union bpf_attr *attr); > > -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Research Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu.pt@xxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html