Re: [PATCH bpf-next v5 4/5] bpf: Make fs kfuncs available for SYSCALL and TRACING program types
From: Christian Brauner
Date: Tue Dec 17 2024 - 07:30:48 EST
On Tue, Dec 10, 2024 at 10:58:52AM -0800, Alexei Starovoitov wrote:
> On Tue, Dec 10, 2024 at 6:43 AM Christian Brauner <brauner@xxxxxxxxxx> wrote:
> >
> > On Tue, Dec 10, 2024 at 02:03:53PM +0000, Juntong Deng wrote:
> > > Currently fs kfuncs are only available for LSM program type, but fs
> > > kfuncs are generic and useful for scenarios other than LSM.
> > >
> > > This patch makes fs kfuncs available for SYSCALL and TRACING
> > > program types.
> >
> > I would like a detailed explanation from the maintainers what it means
> > to make this available to SYSCALL program types, please.
>
> Sigh.
Hm? Was that directed at my question? I don't have the background to
judge this and this whole api looks like a giant footgun so far for
questionable purposes.
I have a hard time seeing parts of CRIU moved into bpf especially
because all of the userspace stuff exists.
> This is obviously not safe from tracing progs.
>
> From BPF_PROG_TYPE_SYSCALL these kfuncs should be safe to use,
> since those progs are not attached to anything.
> Such progs can only be executed via sys_bpf syscall prog_run command.
> They're sleepable, preemptable, faultable, in task ctx.
>
> But I'm not sure what's the value of enabling these kfuncs for
> BPF_PROG_TYPE_SYSCALL.