Subject: CVS commit: src/sys/fs/msdosfs
To: None <source-changes@NetBSD.org>
From: Antti Kantee <pooka@netbsd.org>
List: source-changes
Date: 11/14/2007 19:16:29
Module Name: src
Committed By: pooka
Date: Wed Nov 14 19:16:29 UTC 2007
Modified Files:
src/sys/fs/msdosfs: msdosfs_vnops.c
Log Message:
Fix a problem noticed by Reinoud: the fs would try to release an
unlocked vnode when trying to rename a directory. The fix was to
shuffle some bits around and #pray.
The rename routine actually needs a very very major wide-angle whopping:
* it takes locks out-of-order
* it deals with references from SAVESTART lookups in interesting ways
* I doubt there is any guarantee for correct operation if there
are multiple concurrent accesses
* the error branches might just as well call panic() directly
To generate a diff of this commit:
cvs rdiff -r1.42 -r1.43 src/sys/fs/msdosfs/msdosfs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.