In article <31490263-5a8e-411a-bb57-f7fc5cffc...@eis.cs.tu-bs.de>, J. Hannken-Illjes <hann...@eis.cs.tu-bs.de> wrote: >The more I think the more I just want to remove forced unmounts.
I think that any operation that cannot be undone (and requires reboot to be undone) makes the OS less resilient to failure. >To take some examples: > >- A hard,nointr NFS mount hanging because the server stops responding. > >Even if it were possible to use fstrans_ here (and it would become ugly) >it would not help. The root node of the mount will likely be locked by the >first thread trying to lookup so unmount won't be able to even lookup >the mount point. If it were possible to run `mount -u' or `unmount' it >should be possible to update the mount as `soft,intr' and proceed as usual, >kill threads blocking an unmount and unmount. Store the normalized mount path with the mountpoint, look it up in the mount list, make all blocked threads give an I/O error on the current operation, etc. christos