Date: Sat, 30 Nov 2002 11:00:51 -0800 (PST) From: Kirk McKusick <mckusick@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern kern_lock.c src/sys/sys lockmgr.h src/sys/ufs/ffs ffs_snapshot.c Message-ID: <200211301900.gAUJ0p8R069443@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
mckusick 2002/11/30 11:00:51 PST Modified files: sys/kern kern_lock.c sys/sys lockmgr.h sys/ufs/ffs ffs_snapshot.c Log: Remove a race condition / deadlock from snapshots. When converting from individual vnode locks to the snapshot lock, be sure to pass any waiting processes along to the new lock as well. This transfer is done by a new function in the lock manager, transferlockers(from_lock, to_lock); Thanks to Lamont Granquist <lamont@scriptkiddie.org> for his help in pounding on snapshots beyond all reason and finding this deadlock. Sponsored by: DARPA & NAI Labs. Revision Changes Path 1.60 +37 -6 src/sys/kern/kern_lock.c 1.35 +2 -0 src/sys/sys/lockmgr.h 1.52 +112 -54 src/sys/ufs/ffs/ffs_snapshot.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211301900.gAUJ0p8R069443>