Re: [PATCH v2] audit: Avoid excessive dput/dget in audit_context setup and reset paths

Al Viro <[email protected]>
Newsgroups org.kernel.vger.audit,org.kernel.vger.linux-kernel
Message-ID <20260206081518.GZ3183987@ZenIV>
On Thu, Feb 05, 2026 at 11:53:51PM +0000, Al Viro wrote:
> On Wed, Feb 04, 2026 at 11:45:17PM -0500, Waiman Long wrote:
> 
> > @@ -70,6 +74,8 @@ void chroot_fs_refs(const struct path *old_root, const
> > struct>
> >                                 count++;
> >                                 path_get(new_root);
> >                         }
> > +                       count += fs->pwd_xrefs;
> > +                       fs->pwd_xrefs = 0;
> >                         write_sequnlock(&fs->seq);
> 
> Nope - you only need that for threads that have ->pwd equal to old_root.
> Incidentally, I'd forgotten about that sucker - it kills the idea of
> fdget-like tricks dead, more's the pity.  Third-party modification of
> task->fs->pwd (under task->lock and task->fs->seq), possible even with
> task->fs->users == 1.
> 
> FWIW, I'm going through the fs_struct uses at the moment; will post
> whatever I get when I go down (or earlier, in the unlikely case it doesn't
> spill to tomorrow morning), will keep posting incremental followups
> until the documentation is done.  I'm sick and tired of half-finished
> docs - let's see if I can push through that one this way ;-/
> 

All right, I'm going down - it's 3am here; the current notes are at
http://ftp.linux.org.uk/people/viro/fs_struct, will update when I get
up tomorrow^Wtoday.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.