Date: Sun, 9 Oct 2005 19:45:01 +0000 (UTC) From: Tor Egge <tegge@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/ufs/ffs ffs_snapshot.c Message-ID: <200510091945.j99Jj1kg024437@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
tegge 2005-10-09 19:45:01 UTC FreeBSD src repository Modified files: sys/ufs/ffs ffs_snapshot.c Log: Reduce the probability of low block numbers passed to ffs_snapblkfree() by skipping the call from ffs_snapremove() if the block number is zero. Simplify snapshot locking in ffs_copyonwrite() and ffs_snapblkfree() by using the same locking protocol for low block numbers as for larger block numbers. This removes a lock leak that could happen if vn_lock() succeeded after lockmgr() failed in ffs_snapblkfree(). Check if snapshot is gone before retrying a lock in ffs_copyonwrite(). Revision Changes Path 1.107 +35 -55 src/sys/ufs/ffs/ffs_snapshot.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510091945.j99Jj1kg024437>