summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/fs/zfs/dbuf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr/src/uts/common/fs/zfs/dbuf.c b/usr/src/uts/common/fs/zfs/dbuf.c
index 170d0e8365..f610268bf4 100644
--- a/usr/src/uts/common/fs/zfs/dbuf.c
+++ b/usr/src/uts/common/fs/zfs/dbuf.c
@@ -3085,7 +3085,7 @@ dbuf_try_add_ref(dmu_buf_t *db_fake, objset_t *os, uint64_t obj, uint64_t blkid,
dmu_buf_impl_t *found_db;
boolean_t result = B_FALSE;
- if (db->db_blkid == DMU_BONUS_BLKID)
+ if (blkid == DMU_BONUS_BLKID)
found_db = dbuf_find_bonus(os, obj);
else
found_db = dbuf_find(os, obj, 0, blkid);
@@ -3095,7 +3095,7 @@ dbuf_try_add_ref(dmu_buf_t *db_fake, objset_t *os, uint64_t obj, uint64_t blkid,
(void) zfs_refcount_add(&db->db_holds, tag);
result = B_TRUE;
}
- mutex_exit(&db->db_mtx);
+ mutex_exit(&found_db->db_mtx);
}
return (result);
}