usr/src/uts/common/fs/zfs/bpobj.c
changeset 12538 bb02b9cd2b96
parent 12470 54258108784b
child 12587 16aef3d16470
--- a/usr/src/uts/common/fs/zfs/bpobj.c	Wed Jun 02 13:54:43 2010 -0700
+++ b/usr/src/uts/common/fs/zfs/bpobj.c	Wed Jun 02 14:51:30 2010 -0700
@@ -210,8 +210,10 @@
 
 	ASSERT(bpo->bpo_havecomp);
 	err = dmu_object_info(bpo->bpo_os, bpo->bpo_phys->bpo_subobjs, &doi);
-	if (err)
+	if (err) {
+		mutex_exit(&bpo->bpo_lock);
 		return (err);
+	}
 	epb = doi.doi_data_block_size / sizeof (uint64_t);
 
 	for (i = bpo->bpo_phys->bpo_num_subobjs - 1; i >= 0; i--) {