Skip to content

Commit f2baddb

Browse files
committed
Respond to @amotin's latest comments:
* Remove an unhelpful assertion * Move dn_maxblkid access out of the db_rwlock region
1 parent af3c9b1 commit f2baddb

File tree

2 files changed

+8
-9
lines changed

2 files changed

+8
-9
lines changed

module/zfs/dbuf.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4663,21 +4663,21 @@ dbuf_lightweight_ready(zio_t *zio)
46634663
bp_get_dsize_sync(spa, bp_orig);
46644664
dnode_diduse_space(dn, delta);
46654665

4666-
uint64_t blkid = dr->dt.dll.dr_blkid;
4667-
mutex_enter(&dn->dn_mtx);
4668-
if (blkid > dn->dn_phys->dn_maxblkid) {
4669-
ASSERT0(dn->dn_objset->os_raw_receive);
4670-
dn->dn_phys->dn_maxblkid = blkid;
4671-
}
4672-
mutex_exit(&dn->dn_mtx);
4673-
46744666
if (!BP_IS_EMBEDDED(bp)) {
46754667
uint64_t fill = BP_IS_HOLE(bp) ? 0 : 1;
46764668
BP_SET_FILL(bp, fill);
46774669
}
46784670

46794671
*bp_orig = *bp;
46804672
rw_exit(&parent_db->db_rwlock);
4673+
4674+
uint64_t blkid = dr->dt.dll.dr_blkid;
4675+
mutex_enter(&dn->dn_mtx);
4676+
if (blkid > dn->dn_phys->dn_maxblkid) {
4677+
ASSERT0(dn->dn_objset->os_raw_receive);
4678+
dn->dn_phys->dn_maxblkid = blkid;
4679+
}
4680+
mutex_exit(&dn->dn_mtx);
46814681
}
46824682

46834683
static void

module/zfs/dnode_sync.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -564,7 +564,6 @@ dnode_undirty_dbufs(list_t *list)
564564
ASSERT(list_head(&db->db_dirty_records) == dr);
565565
list_remove_head(&db->db_dirty_records);
566566
ASSERT(list_is_empty(&db->db_dirty_records));
567-
ASSERT(MUTEX_HELD(&db->db_mtx));
568567
db->db_dirtycnt -= 1;
569568
if (db->db_level == 0) {
570569
ASSERT(db->db_blkid == DMU_BONUS_BLKID ||

0 commit comments

Comments
 (0)