git: DragonFly_RELEASE_6_4 kernel - Fix umount -f related panic

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Oct 21 09:35:57 PDT 2024


commit c87a730222aafb0bb8619e1dd0491d3bb2352955
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Tue Dec 19 19:14:23 2023 -0800

    kernel - Fix umount -f related panic
    
    * Adjust umount -f (forced unmount) logic to kill processes which
      still hold references to the mount in question, due to being chrooted
      or jailed in the mount, their current directory being on the mount,
      or having any open file via the mount.
    
      To be frank, it is hard to find a nice way to rip a mount out from under
      processes as their behavior upon suddenly having file descriptors go bad
      is completely non-deterministic.  A forced unmount is not supposed to be
      kind to the system.  The best solution is to kill the processes.
    
    * Fixes panics related to regular use of umount -f if the operation
      happens to race active operations by processes on the mount.
    
    Reported-by: marino

Summary of changes:
 sys/kern/vfs_syscalls.c | 90 +++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 83 insertions(+), 7 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/c87a730222aafb0bb8619e1dd0491d3bb2352955


-- 
DragonFly BSD source repository


More information about the Commits mailing list