DragonFly-2.3.0.327.g2d4cd master sys/vfs/msdosfs msdosfs_denode.c

Nicolas Thery nth at crater.dragonflybsd.org
Sat Feb 28 04:26:41 PST 2009


commit 2d4cdfafc8fce900fb62864cc36040d7485eb059
Author: Nicolas Thery <nthery at gmail.com>
Date:   Thu Feb 26 04:29:14 2009 +0100

    msdosfs: fix bug in msfdosfs_hashins().
    
    This function returns an error if there is already a denode in the hash table:
    EBUSY if the hashed denode represents a live file and EINVAL if it represents a
    deleted but still opened file.
    
    There was a typo in the function causing it to check for liveness in the denode
    to insert instead of the already inserted one.  As a consequence, if N threads
    were in a race in deget() to insert a new denode for the same file in the hash
    table, the losers would fail with EINVAL instead of retrying.

Summary of changes:
 sys/vfs/msdosfs/msdosfs_denode.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/2d4cdfafc8fce900fb62864cc36040d7485eb059


-- 
DragonFly BSD source repository





More information about the Commits mailing list