Date: Mon, 31 Mar 2008 07:55:45 +0000 (UTC) From: Jeff Roberson <jeff@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/ufs/ffs ffs_vnops.c Message-ID: <200803310755.m2V7tjKX078639@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jeff 2008-03-31 07:55:45 UTC FreeBSD src repository Modified files: sys/ufs/ffs ffs_vnops.c Log: - Since rev 1.142 of ffs_snapshot.c the interlock has not been required to protect the v_lock pointer. Removing the interlock acquisition here allows vn_lock() to proceed without requiring the interlock at all. - If the lock mutated while we were sleeping on it the interlock has been dropped. It is conceivable that the upper layer code was relying on the interlock and LK_NOWAIT to protect the identity or state of the vnode while acquiring the lock. In this case return EBUSY rather than trying the new lock to prevent potential races. Reviewed by: tegge Revision Changes Path 1.182 +4 -11 src/sys/ufs/ffs/ffs_vnops.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803310755.m2V7tjKX078639>