DragonFly-126.96.36.199.gfe771 rel2_2 sys/vfs/msdosfs msdosfs_denode.c
nthery at gmail.com
Sun Mar 1 11:20:43 PST 2009
Sorry this commit and the previous one were unintended.
I tried to MFC sth and used the following command-line:
git push crater rel2_2:refs/heads/DragonFly_RELEASE_2_2
(rel2_2 is the name of my local branch).
2009/3/1 Nicolas Thery <nth at crater.dragonflybsd.org>:
> commit fe7717df0d7279d431d9d7a2b431ca452ea8dc46
> Author: Nicolas Thery <nthery at gmail.com>
> Date: Sun Mar 1 20:03:45 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>
> (cherry picked from commit 629f33a733bba046a296b5f1dfa4ef45bc388cb4)
> Summary of changes:
> sys/vfs/msdosfs/msdosfs_denode.c | 26 +++++++++++++++++++++-----
> 1 files changed, 21 insertions(+), 5 deletions(-)
> DragonFly BSD source repository
More information about the Commits