svn commit: r271002 - stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Xin LI
delphij at FreeBSD.org
Wed Sep 3 08:21:22 UTC 2014
Author: delphij
Date: Wed Sep 3 08:21:21 2014
New Revision: 271002
URL: http://svnweb.freebsd.org/changeset/base/271002
Log:
MFC r270248: MFV r270196:
Illumos issue:
5047 don't use atomic_*_nv if you discard the return value
Modified:
stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
==============================================================================
--- stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Wed Sep 3 08:18:09 2014 (r271001)
+++ stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Wed Sep 3 08:21:21 2014 (r271002)
@@ -1603,7 +1603,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);
/*
@@ -1779,7 +1779,7 @@ dbuf_create(dnode_t *dn, uint8_t level,
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);
@@ -1825,7 +1825,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);
/*
@@ -2109,7 +2109,7 @@ dbuf_rele_and_unlock(dmu_buf_impl_t *db,
* 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
Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c
==============================================================================
--- stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c Wed Sep 3 08:18:09 2014 (r271001)
+++ stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c Wed Sep 3 08:21:21 2014 (r271002)
@@ -288,7 +288,7 @@ dmu_bonus_hold(objset_t *os, uint64_t ob
/* 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);
}
/*
More information about the svn-src-all
mailing list