On Sun, Dec 19, 2021 at 07:52:48AM IST, Alexei Starovoitov wrote: > On Fri, Dec 17, 2021 at 07:20:26AM +0530, Kumar Kartikeya Dwivedi wrote: > > > > diff --git a/include/linux/bpf.h b/include/linux/bpf.h > > index 965fffaf0308..015cb633838b 100644 > > --- a/include/linux/bpf.h > > +++ b/include/linux/bpf.h > > @@ -521,6 +521,9 @@ struct bpf_verifier_ops { > > enum bpf_access_type atype, > > u32 *next_btf_id); > > bool (*check_kfunc_call)(u32 kfunc_btf_id, struct module *owner); > > + bool (*is_acquire_kfunc)(u32 kfunc_btf_id, struct module *owner); > > + bool (*is_release_kfunc)(u32 kfunc_btf_id, struct module *owner); > > + bool (*is_kfunc_ret_type_null)(u32 kfunc_btf_id, struct module *owner); > > Same feedback as before... > > Those callbacks are not necessary. > The existing check_kfunc_call() is just as inconvenient. > When module's BTF comes in could you add it to mod's info instead of > introducing callbacks for every kind of data the module has. > Those callbacks don't server any purpose other than passing the particular > data set back. The verifier side should access those data sets directly. Ok, interesting idea. So these then go into the ".modinfo" section? I think then we can also drop the check_kfunc_call callback? -- Kartikeya