DragonFly commits List (threaded) for 2009-02
DragonFly BSD
DragonFly commits List (threaded) for 2009-02
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

DragonFly-2.3.0.328.g629f3 master sys/vfs/msdosfs msdosfs_denode.c


From: Nicolas Thery <nth@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 28 Feb 2009 08:45:19 -0800 (PST)

commit 629f33a733bba046a296b5f1dfa4ef45bc388cb4
Author: Nicolas Thery <nthery@gmail.com>
Date:   Thu Feb 26 07:30:33 2009 +0100

    msdosfs: fix deleted-but-open files handling.
    
    When deleting a file, msdosfs keeps its denode in the denode cache until it is
    reclaimed.  This causes a collision in the cache when recycling the directory
    entry of a deleted but still open file for a new or renamed file.  This
    collision was incorrecly handled resulting in a kernel panic (rename case) or
    syscall error and corrupted in-core state (new file case).
    
    Fix by allowing denodes pointing to the same directory entry to coexist in the
    cache as long as a single one of them represents an existing file.
    
    Reported-by: corecore@
    Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1286>

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

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/629f33a733bba046a296b5f1dfa4ef45bc388cb4


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]