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]

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


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 28 Feb 2009 15:52:59 -0800 (PST)

    I'm not quite sure about this solution.  It it possible to delete
    the cached (dead) denode instead?

						-Matt


:    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.




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