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)...