svn commit: r209094 -
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Martin Matuska
mm at FreeBSD.org
Sat Jun 12 11:19:51 UTC 2010
Author: mm
Date: Sat Jun 12 11:19:51 2010
New Revision: 209094
URL: http://svn.freebsd.org/changeset/base/209094
Log:
Fix zfs destroy fails to free object in open context, stops up txg train
OpenSolaris onnv-revision: 9409:9dc3f17354ed
Obtained from: OpenSolaris (Bug ID 6809683)
Approved by: pjd, delphij (mentor)
MFC after: 3 days
Modified:
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c Sat Jun 12 11:18:29 2010 (r209093)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c Sat Jun 12 11:19:51 2010 (r209094)
@@ -1317,16 +1317,7 @@ dnode_next_offset_level(dnode_t *dn, int
for (i = (*offset >> span) & (blkfill - 1);
i >= 0 && i < blkfill; i += inc) {
- boolean_t newcontents = B_TRUE;
- if (txg) {
- int j;
- newcontents = B_FALSE;
- for (j = 0; j < dnp[i].dn_nblkptr; j++) {
- if (dnp[i].dn_blkptr[j].blk_birth > txg)
- newcontents = B_TRUE;
- }
- }
- if (!dnp[i].dn_type == hole && newcontents)
+ if ((dnp[i].dn_type == DMU_OT_NONE) == hole)
break;
*offset += (1ULL << span) * inc;
}
More information about the svn-src-all
mailing list