DragonFly-2.1.1.458.g3f9b4 master sys/vfs/hammer hammer_vnops.c

Matthew Dillon dillon at crater.dragonflybsd.org
Sat Jan 24 23:20:37 PST 2009


commit 3f9b4cfa354fa847568bf60bb411929ef858e6a5
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sat Jan 24 23:08:46 2009 -0800

    HAMMER VFS - Fix deadlock in rmdir
    
    hammer_vop_rmdir() maintains a cursor at the directory entry being deleted,
    and then calls hammer_ip_check_directory_empty() to check if the directory
    is empty.  The check code creates a second, nested cursor.
    
    Any locks on the first cursor must be released in order to allow the
    function to block while scanning the second cursor to avoid possible
    deadlocks.

Summary of changes:
 sys/vfs/hammer/hammer_vnops.c |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/3f9b4cfa354fa847568bf60bb411929ef858e6a5


-- 
DragonFly BSD source repository





More information about the Commits mailing list