On Fri, Jul 10, 2020 at 10:00 AM Arnaldo Carvalho de Melo <arnaldo.melo@xxxxxxxxx> wrote: > > Em Wed, Jul 01, 2020 at 08:21:13AM -0700, Alexei Starovoitov escreveu: > > On Wed, Jul 1, 2020 at 2:34 AM Daniel Borkmann <daniel@xxxxxxxxxxxxx> wrote: > > > > > > +1, I think augmenting mid-term would be the best given check_sleepable_blacklist() > > > is rather a very fragile workaround^hack and it's also a generic lsm/sec hooks issue > > > > I tried to make that crystal clear back in march during bpf virtual conference. > > imo whitelist is just as fragile as blacklist. Underlying > > implementation can change. > > > > > (at least for BPF_PROG_TYPE_LSM type & for the sake of documenting it for other LSMs). > > > Perhaps there are function attributes that could be used and later retrieved via BTF? > > > > Even if we convince gcc folks to add another function attribute it > > won't appear in dwarf. > > Warning, hack ahead! > > Perhaps we could do that with some sort of convention, i.e. define some > type and make a function returning that type to have the desired > attribute? > > I.e. > > typedef __attribute__foo__int int; > > __attribute__foo__int function_bla(...) > { > } > > ? What about lsm hooks returning void ? I guess for lsm we can hack something like that, but for __rcu and __user that won't really work. The kernel changes will be too massive.