svn commit: r199306 -
user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Kip Macy
kmacy at FreeBSD.org
Mon Nov 16 03:36:55 UTC 2009
Author: kmacy
Date: Mon Nov 16 03:36:54 2009
New Revision: 199306
URL: http://svn.freebsd.org/changeset/base/199306
Log:
handle case where don't call allocbuf if b_kvasize is less than size
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 Mon Nov 16 02:46:21 2009 (r199305)
+++ user/kmacy/releng_8_fcs_buf/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Mon Nov 16 03:36:54 2009 (r199306)
@@ -1339,9 +1339,13 @@ arc_gbincore_replace(struct vnode *vp, o
else if ((bp->b_flags & (B_VMIO | B_INVAL)) == 0)
bp->b_flags |= B_CACHE;
bremfree(bp);
- if (bp->b_bcount != size)
+ if ((bp->b_bcount != size) && (buf->b_kvasize >= size)) {
allocbuf_flags(bp, size, flags);
- goto done;
+ goto done;
+ } else {
+ bp->b_flags |= B_INVAL;
+ brelse(bp);
+ }
}
}
}
More information about the svn-src-user
mailing list