On Thu, Aug 15, 2024 at 2:59 PM Eduard Zingerman <eddyz87@xxxxxxxxx> wrote: > > On Thu, 2024-08-15 at 14:25 -0700, Andrii Nakryiko wrote: > > On Mon, Aug 12, 2024 at 4:44 PM Eduard Zingerman <eddyz87@xxxxxxxxx> wrote: > > > > > > do_misc_fixups() relaces bpf_cast_to_kern_ctx() and bpf_rdonly_cast() > > > by a single instruction "r0 = r1". This clearly follows nocsr contract. > > > Mark these two functions as KF_NOCSR, in order to use them in > > > selftests checking KF_NOCSR behaviour for kfuncs. > > > > > > Signed-off-by: Eduard Zingerman <eddyz87@xxxxxxxxx> > > > --- > > > kernel/bpf/helpers.c | 4 ++-- > > > kernel/bpf/verifier.c | 3 ++- > > > 2 files changed, 4 insertions(+), 3 deletions(-) > > > > Isn't it now "bpf fastcall" and not "nocsr"? Shouldn't the flag and > > verifier code reflect this updated terminology? > > Here is a pull request for LLVM that lands the feature under > the new bpf_fastcall name: https://github.com/llvm/llvm-project/pull/101228 > I hope that it would be approved today or tomorrow (more like tomorrow). > > Kernel side uses NOCSR in all places. > I can add a first patch to the series, renaming all NOCSR to bpf_fastcall, > now that it looks like llvm upstream won't object the name. Yep, I'd do that. Let's keep terminology consistent throughout. I assume you'll also eventually follow up with bpf_helpers_defs.h (there is a script that generates it) change to add that bpf_fastcall attribute for select helpers, right? > > [...] >