svn commit: r198841 -
user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Kip Macy
kmacy at FreeBSD.org
Tue Nov 3 05:53:48 UTC 2009
Author: kmacy
Date: Tue Nov 3 05:53:48 2009
New Revision: 198841
URL: http://svn.freebsd.org/changeset/base/198841
Log:
call allocbuf on size mismatch
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 Tue Nov 3 05:52:44 2009 (r198840)
+++ user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Tue Nov 3 05:53:48 2009 (r198841)
@@ -1345,13 +1345,9 @@ arc_getblk(arc_buf_t *buf)
else if ((bp->b_flags & (B_VMIO | B_INVAL)) == 0)
bp->b_flags |= B_CACHE;
bremfree(bp);
- if (bp->b_bcount != size) {
- bp->b_flags |= B_INVAL;
- bp->b_flags &= ~B_CACHE;
- brelse(bp);
- newbp = getblk(vp, blkno, size, 0, 0, flags);
- } else
- newbp = bp;
+ if (bp->b_bcount != size)
+ allocbuf_flags(bp, size, flags);
+ newbp = bp;
}
} else {
More information about the svn-src-user
mailing list