svn commit: r198738 - user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Kip Macy kmacy at FreeBSD.org
Sun Nov 1 04:20:06 UTC 2009


Author: kmacy
Date: Sun Nov  1 04:20:06 2009
New Revision: 198738
URL: http://svn.freebsd.org/changeset/base/198738

Log:
  do brelvp early

Modified:
  user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c

Modified: user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
==============================================================================
--- user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Sun Nov  1 02:22:44 2009	(r198737)
+++ user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Sun Nov  1 04:20:06 2009	(r198738)
@@ -1359,11 +1359,14 @@ arc_brelse(arc_buf_t *buf, void *data, s
 {
 	struct buf *bp;
 
+	bp = buf->b_bp;
 #ifdef INVARIANTS
-	if (buf->b_bp->b_vp)
+	if (bp->b_vp) {
 		KASSERT((buf->b_bp->b_xflags & (BX_VNCLEAN|BX_VNDIRTY)) == BX_VNCLEAN, ("brelse() on buffer that is not clean"));
+		brelvp(bp);
+	}
 #endif	
-	bp = buf->b_bp;
+	
 	CTR5(KTR_SPARE2, "arc_brelse() bp=%p flags %X size %ld lblkno=%ld blkno=%ld",
 	    bp, bp->b_flags, size, bp->b_lblkno, bp->b_blkno);
 	brelse(bp);


More information about the svn-src-user mailing list