MFV r270196:
Illumos issue: 5047 don't use atomic_*_nv if you discard the return value MFC after: 2 weeks
This commit is contained in:
commit
7c1db36b28
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=270248
@ -1609,7 +1609,7 @@ dbuf_clear(dmu_buf_impl_t *db)
|
||||
dndb = dn->dn_dbuf;
|
||||
if (db->db_blkid != DMU_BONUS_BLKID && MUTEX_HELD(&dn->dn_dbufs_mtx)) {
|
||||
avl_remove(&dn->dn_dbufs, db);
|
||||
(void) atomic_dec_32_nv(&dn->dn_dbufs_count);
|
||||
atomic_dec_32(&dn->dn_dbufs_count);
|
||||
membar_producer();
|
||||
DB_DNODE_EXIT(db);
|
||||
/*
|
||||
@ -1785,7 +1785,7 @@ dbuf_create(dnode_t *dn, uint8_t level, uint64_t blkid,
|
||||
ASSERT(dn->dn_object == DMU_META_DNODE_OBJECT ||
|
||||
refcount_count(&dn->dn_holds) > 0);
|
||||
(void) refcount_add(&dn->dn_holds, db);
|
||||
(void) atomic_inc_32_nv(&dn->dn_dbufs_count);
|
||||
atomic_inc_32(&dn->dn_dbufs_count);
|
||||
|
||||
dprintf_dbuf(db, "db=%p\n", db);
|
||||
|
||||
@ -1831,7 +1831,7 @@ dbuf_destroy(dmu_buf_impl_t *db)
|
||||
dn = DB_DNODE(db);
|
||||
mutex_enter(&dn->dn_dbufs_mtx);
|
||||
avl_remove(&dn->dn_dbufs, db);
|
||||
(void) atomic_dec_32_nv(&dn->dn_dbufs_count);
|
||||
atomic_dec_32(&dn->dn_dbufs_count);
|
||||
mutex_exit(&dn->dn_dbufs_mtx);
|
||||
DB_DNODE_EXIT(db);
|
||||
/*
|
||||
@ -2115,7 +2115,7 @@ dbuf_rele_and_unlock(dmu_buf_impl_t *db, void *tag)
|
||||
* until the move completes.
|
||||
*/
|
||||
DB_DNODE_ENTER(db);
|
||||
(void) atomic_dec_32_nv(&DB_DNODE(db)->dn_dbufs_count);
|
||||
atomic_dec_32(&DB_DNODE(db)->dn_dbufs_count);
|
||||
DB_DNODE_EXIT(db);
|
||||
/*
|
||||
* The bonus buffer's dnode hold is no longer discounted
|
||||
|
@ -287,7 +287,7 @@ dmu_bonus_hold(objset_t *os, uint64_t object, void *tag, dmu_buf_t **dbp)
|
||||
/* as long as the bonus buf is held, the dnode will be held */
|
||||
if (refcount_add(&db->db_holds, tag) == 1) {
|
||||
VERIFY(dnode_add_ref(dn, db));
|
||||
(void) atomic_inc_32_nv(&dn->dn_dbufs_count);
|
||||
atomic_inc_32(&dn->dn_dbufs_count);
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user