On Tue, Apr 29, 2025 at 06:10:54AM +0100, Al Viro wrote: > On Tue, Apr 29, 2025 at 05:03:58AM +0100, Al Viro wrote: > > On Mon, Apr 28, 2025 at 07:53:18PM +0100, Al Viro wrote: > > > > > FWIW, I've a series of cleanups falling out of audit of struct mount > > > handling; it's still growing, but I'll post the stable parts for review > > > tonight or tomorrow... > > > > _Another_ fun one, this time around do_umount(). > > ... and more, from 620c266f3949 "fhandle: relax open_by_handle_at() > permission checks" - just what is protecting has_locked_children() > use there? We are, after all, iterating through ->mnt_mounts - > with no locks whatsoever. Not to mention the fun question regarding > the result (including the bits sensitive to is_mounted()) remaining > valid by the time you get through exportfs_decode_fh_raw() (and no, > you can't hold any namespace_sem over it - no IO allowed under > that, so we'll need to recheck after that point)... Anyway, I've pushed the obvious fixes to viro/vfs.git#fixes for now; there's more coming (mnt_flags misuses, basically), but that'll have to wait until I get some sleep...