On Fri, 2022-02-18 at 19:26 +0000, Al Viro wrote: > On Fri, Feb 18, 2022 at 01:31:13PM -0500, Rik van Riel wrote: > > After kern_unmount returns, callers can no longer access the > > vfsmount structure. However, the vfsmount structure does need > > to be kept around until the end of the RCU grace period, to > > make sure other accesses have all gone away too. > > > > This can be accomplished by either gating each kern_unmount > > on synchronize_rcu (the comment in the code says it all), or > > by deferring the freeing until the next grace period, where > > it needs to be handled in a workqueue due to the locking in > > mntput_no_expire(). > > NAK. There's code that relies upon kern_unmount() being > synchronous. That's precisely the reason why MNT_INTERNAL > is treated that way in mntput_no_expire(). Fair enough. Should I make a kern_unmount_rcu() version that gets called just from mq_put_mnt()? -- All Rights Reversed.
Attachment:
signature.asc
Description: This is a digitally signed message part