[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=wjVdGkjDXBbvLn2wbZnqP4UsH46E3gqJ9m7UG6DpX2+WA@mail.gmail.com>
Date: Wed, 3 Jan 2024 10:38:09 -0800
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: LKML <linux-kernel@...r.kernel.org>,
Linux Trace Kernel <linux-trace-kernel@...r.kernel.org>, Masami Hiramatsu <mhiramat@...nel.org>,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
Subject: Re: [PATCH] eventfs: Stop using dcache_readdir() for getdents()
On Wed, 3 Jan 2024 at 10:12, Linus Torvalds
<torvalds@...ux-foundation.org> wrote:
>
> Much better. Now eventfs looks more like a real filesystem, and less
> like an eldritch horror monster that is parts of dcache tackled onto a
> pseudo-filesystem.
Oh, except I think you still need to just remove the 'set_gid()' mess.
It's disgusting and it's wrong, and it's not even what the 'uid'
option does (it only sets the root inode uid).
If you remount the filesystem with different gid values, you get to
keep both broken pieces. And if it isn't a remount, then setting the
root uid is sufficient.
I think the whole thing was triggered by commit 49d67e445742, and
maybe the fix is to just revert that commit.
That commit makes no sense in general, since the default mounting
position for tracefs that the kernel sets up is only accessible to
root anyway.
Alternatively, just do the ->permissions() thing, and allow access to
the group in the mount options.
Getting rid of set_gid() would be this attached lovely patch:
fs/tracefs/inode.c | 83 ++----------------------------------------------------
1 file changed, 2 insertions(+), 81 deletions(-)
and would get rid of the final (?) piece of disgusting dcache hackery
that tracefs most definitely should not have.
Linus
View attachment "patch.diff" of type "text/x-patch" (2965 bytes)
Powered by blists - more mailing lists