Re: [PATCH v6] backing_file: store user_path_file
Amir Goldstein <[email protected]>
| Newsgroups | org.kernel.vger.linux-unionfs,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-security-module,org.kernel.vger.selinux,org.ozlabs.lists.linux-erofs |
|---|---|
| Message-ID | <CAOQ4uxj8SZqaFbrVifw0uw7skbUvJP1_nLWj4PYCeZuaLy5t_A@mail.gmail.com> |
On Thu, Mar 19, 2026 at 12:47 AM Paul Moore <[email protected]> wrote: > > On Wed, Mar 18, 2026 at 9:13 AM Amir Goldstein <[email protected]> wrote: > > > > Instead of storing the user_path, store an O_PATH file for the > > user_path with the original user file creds and a security context. > > > > The user_path_file is only exported as a const pointer and its refcnt > > is initialized to FILE_REF_DEAD, because it is not a refcounted object. > > > > The file_ref_init() helper was changed to accept the FILE_REF_ constant > > instead of the fake +1 integer count. > > > > Signed-off-by: Amir Goldstein <[email protected]> > > --- > > > > Christian, > > > > My v5 patch was sent by Paul along with his LSM/selinux pataches [1]. > > Here are the changes you requested. > > > > I removed the ACKs and Tested-by because of the changes. > > > > Thanks, > > Amir. > > > > Changes since v5: > > - Restore file_ref_init() helper without refcnt -1 offset > > - Future proofing errors from backing_file_open_user_path() > > > > [1] https://lore.kernel.org/r/[email protected]/ > > > > fs/backing-file.c | 26 ++++++++++-------- > > fs/erofs/ishare.c | 13 +++++++-- > > fs/file_table.c | 53 ++++++++++++++++++++++++++++-------- > > fs/fuse/passthrough.c | 3 +- > > fs/internal.h | 5 ++-- > > fs/overlayfs/dir.c | 3 +- > > fs/overlayfs/file.c | 1 + > > include/linux/backing-file.h | 29 ++++++++++++++++++-- > > include/linux/file_ref.h | 4 +-- > > 9 files changed, 103 insertions(+), 34 deletions(-) > > Still works for me. I'm going to update lsm/stable-7.0 with this > patch so we can get some more linux-next testing. > > Tested-by: Paul Moore <[email protected]> > Paul, As you saw, syzbot found a nasty bug in this patch and it is too hard to fix it without introducing more hazards. Therefore, per Christian's request I am withdrawing this patch. Please see compile tested alternative solution for selinux without intrusive vfs change at: https://github.com/amir73il/linux/commits/user_path_file/ Thanks, Amir.