On Fri, Apr 14, 2023 at 03:57:34PM +0000, Trond Myklebust wrote: > > > > Being able to convert into an O_PATH descriptor gives you more options than just unmounting. It should allow you to syncfs() before unmounting. It should allow you to call open_tree() so you can manipulate the filesystem that is no longer accessible by path walk (e.g. so you can bind it elsewhere or move it). > > > > One more thing it might allow us to do, which I’ve been wanting for a while in NFS: allow us to flip the mount type from being “hard” to “soft” before doing the lazy unmount, so that any application that might still retry I/O after the call to umount_begin() completes will start timing out with an I/O error, and free up the resources it might otherwise hold forever. > s/lazy/forced/, surely? Confused... Note, BTW, that hard vs. soft is a property of fs instance; if you have it present elsewhere in the mount tree, flipping it would affect all such places. I don't see any good way to make it a per-mount thing, TBH...