看板 DFBSD_commit 關於我們 聯絡資訊
dillon 2005/03/08 21:16:23 PST DragonFly src repository Modified files: sys/kern vfs_cache.c Log: Fix a serious bug in cache_inval_vp()'s TAILQ iteration through v_namecache. It was iterating using nc_entry instead of nc_vnode. The effect was, typically, to deadlock in the namecache locking code but could also result in the namecache topology becoming confused. Add code to detect and report vnode ripouts during the scan. This case can occur in certain rare circumstances because a held namecache structure only prevents it from being removed from the topology, it does not prevent it from being disassociated from a vnode. Reported-by: Michael van Tellingen <michael@synantics.nl> and Hiten Pandya <hmp@backplane.com> Revision Changes Path 1.52 +20 -1 src/sys/kern/vfs_cache.c http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_cache.c.diff?r1=1.51&r2=1.52&f=u