[packages/zfs] - up to 0.8.0-rc2

baggins baggins at pld-linux.org
Sun Dec 9 11:33:11 CET 2018


commit 7cc6cb14d2205c48e5a469cb838784848e1a7500
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sun Dec 9 11:32:55 2018 +0100

    - up to 0.8.0-rc2

 am.patch          |   11 -
 kernel-4.19.patch | 1046 -----------------------------------------------------
 zfs.spec          |    6 +-
 3 files changed, 2 insertions(+), 1061 deletions(-)
---
diff --git a/zfs.spec b/zfs.spec
index 22f43d1..89c303a 100644
--- a/zfs.spec
+++ b/zfs.spec
@@ -27,7 +27,7 @@ exit 1
 
 %define		_duplicate_files_terminate_build	0
 
-%define	_rc	rc1
+%define	_rc	rc2
 %define	rel	0.%{_rc}.1
 %define	pname	zfs
 Summary:	Native Linux port of the ZFS filesystem
@@ -39,10 +39,9 @@ License:	CDDL
 Group:		Applications/System
 #Source0:	https://github.com/zfsonlinux/zfs/releases/download/zfs-%{version}/%{pname}-%{version}.tar.gz
 Source0:	https://github.com/zfsonlinux/zfs/archive/zfs-%{version}-%{_rc}/%{pname}-%{version}-%{_rc}.tar.gz
-# Source0-md5:	827148de600b041881d572063ea49bc8
+# Source0-md5:	c32e6373ae1b4524f25e97917a1fa68a
 Patch0:		x32.patch
 Patch1:		am.patch
-Patch2:		kernel-4.19.patch
 URL:		http://zfsonlinux.org/
 BuildRequires:	autoconf >= 2.50
 BuildRequires:	automake
@@ -243,7 +242,6 @@ p=`pwd`\
 %setup -q -n %{pname}-zfs-%{version}-%{_rc}
 %patch0 -p1
 %patch1 -p1
-%patch2 -p1
 
 %build
 %{__libtoolize}
diff --git a/am.patch b/am.patch
index da7d8d1..9fd774f 100644
--- a/am.patch
+++ b/am.patch
@@ -30,14 +30,3 @@ index 55cae89fa..8ce1af3b8 100644
  	cd $(DESTDIR)$(prefix)/src/zfs-$(VERSION)/$(LINUX_VERSION) && \
  	ln -fs zfs_config.h spl_config.h && \
  	ln -fs zfs.release spl.release
---- zfs-0.7.9/config/user-systemd.m4~	2018-08-17 08:32:52.000000000 +0200
-+++ zfs-0.7.9/config/user-systemd.m4	2018-08-19 12:08:45.390362052 +0200
-@@ -18,7 +18,7 @@
- 	AC_ARG_WITH(systemdmodulesloaddir,
- 		AC_HELP_STRING([--with-systemdmodulesloaddir=DIR],
- 		[install systemd module load files into dir [[/usr/lib/modules-load.d]]]),
--		systemdmoduleloaddir=$withval,systemdmodulesloaddir=/usr/lib/modules-load.d)
-+		systemdmodulesloaddir=$withval,systemdmodulesloaddir=/usr/lib/modules-load.d)
- 
- 	AC_ARG_WITH(systemdgeneratordir,
- 		AC_HELP_STRING([--with-systemdgeneratordir=DIR],
diff --git a/kernel-4.19.patch b/kernel-4.19.patch
deleted file mode 100644
index 93dbd34..0000000
--- a/kernel-4.19.patch
+++ /dev/null
@@ -1,1046 +0,0 @@
-From c13060e4787e9578dafad85a47c62457424bec9c Mon Sep 17 00:00:00 2001
-From: Tim Schumacher <timschumi at gmx.de>
-Date: Wed, 26 Sep 2018 19:29:26 +0200
-Subject: [PATCH] Linux 4.19-rc3+ compat: Remove refcount_t compat
-
-torvalds/linux at 59b57717f ("blkcg: delay blkg destruction until
-after writeback has finished") added a refcount_t to the blkcg
-structure. Due to the refcount_t compatibility code, zfs_refcount_t
-was used by mistake.
-
-Resolve this by removing the compatibility code and replacing the
-occurrences of refcount_t with zfs_refcount_t.
-
-Reviewed-by: Franz Pletz <fpletz at fnordicwalking.de>
-Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
-Signed-off-by: Tim Schumacher <timschumi at gmx.de>
-Closes #7885
-Closes #7932
----
- cmd/ztest/ztest.c           |  6 ++---
- include/linux/vfs_compat.h  |  5 ----
- include/sys/abd.h           |  2 +-
- include/sys/arc.h           |  2 +-
- include/sys/arc_impl.h      |  8 +++---
- include/sys/dbuf.h          |  2 +-
- include/sys/dmu_tx.h        |  4 +--
- include/sys/dnode.h         |  4 +--
- include/sys/dsl_crypt.h     |  6 ++---
- include/sys/dsl_dataset.h   |  2 +-
- include/sys/metaslab_impl.h |  4 +--
- include/sys/refcount.h      | 52 ++++++++++++++++---------------------
- include/sys/rrwlock.h       |  4 +--
- include/sys/sa_impl.h       |  2 +-
- include/sys/spa_impl.h      |  6 ++---
- include/sys/zap.h           |  2 +-
- include/sys/zfs_znode.h     |  2 +-
- module/zfs/arc.c            | 16 ++++++------
- module/zfs/dbuf.c           | 10 +++----
- module/zfs/dmu.c            |  2 +-
- module/zfs/dmu_tx.c         |  6 ++---
- module/zfs/dnode.c          |  6 ++---
- module/zfs/dsl_crypt.c      | 12 ++++-----
- module/zfs/dsl_dataset.c    |  2 +-
- module/zfs/dsl_scan.c       |  6 ++---
- module/zfs/metaslab.c       | 14 +++++-----
- module/zfs/refcount.c       | 30 ++++++++++-----------
- module/zfs/rrwlock.c        |  4 +--
- module/zfs/sa.c             |  2 +-
- module/zfs/spa_misc.c       |  8 +++---
- module/zfs/zfs_ctldir.c     | 10 +++----
- module/zfs/zfs_znode.c      |  2 +-
- 32 files changed, 116 insertions(+), 127 deletions(-)
-
-diff --git a/cmd/ztest/ztest.c b/cmd/ztest/ztest.c
-index 83d057a74d9..ae25957dc13 100644
---- a/cmd/ztest/ztest.c
-+++ b/cmd/ztest/ztest.c
-@@ -1323,7 +1323,7 @@ ztest_dmu_objset_own(const char *name, dmu_objset_type_t type,
-  */
- typedef struct {
- 	list_node_t z_lnode;
--	refcount_t z_refcnt;
-+	zfs_refcount_t z_refcnt;
- 	uint64_t z_object;
- 	zfs_rlock_t z_range_lock;
- } ztest_znode_t;
-@@ -1382,13 +1382,13 @@ ztest_znode_get(ztest_ds_t *zd, uint64_t object)
- 	for (zp = list_head(&zll->z_list); (zp);
- 	    zp = list_next(&zll->z_list, zp)) {
- 		if (zp->z_object == object) {
--			refcount_add(&zp->z_refcnt, RL_TAG);
-+			zfs_refcount_add(&zp->z_refcnt, RL_TAG);
- 			break;
- 		}
- 	}
- 	if (zp == NULL) {
- 		zp = ztest_znode_init(object);
--		refcount_add(&zp->z_refcnt, RL_TAG);
-+		zfs_refcount_add(&zp->z_refcnt, RL_TAG);
- 		list_insert_head(&zll->z_list, zp);
- 	}
- 	mutex_exit(&zll->z_lock);
-diff --git a/include/linux/vfs_compat.h b/include/linux/vfs_compat.h
-index 90b3cca78c0..c01f5850881 100644
---- a/include/linux/vfs_compat.h
-+++ b/include/linux/vfs_compat.h
-@@ -297,9 +297,6 @@ lseek_execute(
-  * This is several orders of magnitude larger than expected grace period.
-  * At 60 seconds the kernel will also begin issuing RCU stall warnings.
-  */
--#ifdef refcount_t
--#undef refcount_t
--#endif
- 
- #include <linux/posix_acl.h>
- 
-@@ -430,8 +427,6 @@ typedef mode_t zpl_equivmode_t;
- #define	zpl_posix_acl_valid(ip, acl)  posix_acl_valid(acl)
- #endif
- 
--#define	refcount_t	zfs_refcount_t
--
- #endif /* CONFIG_FS_POSIX_ACL */
- 
- /*
-diff --git a/include/sys/abd.h b/include/sys/abd.h
-index 077bb9d1761..3d9fdbf102a 100644
---- a/include/sys/abd.h
-+++ b/include/sys/abd.h
-@@ -51,7 +51,7 @@ typedef struct abd {
- 	abd_flags_t	abd_flags;
- 	uint_t		abd_size;	/* excludes scattered abd_offset */
- 	struct abd	*abd_parent;
--	refcount_t	abd_children;
-+	zfs_refcount_t	abd_children;
- 	union {
- 		struct abd_scatter {
- 			uint_t		abd_offset;
-diff --git a/include/sys/arc.h b/include/sys/arc.h
-index a5bdefb56f4..dc2fd03647f 100644
---- a/include/sys/arc.h
-+++ b/include/sys/arc.h
-@@ -87,7 +87,7 @@ struct arc_prune {
- 	void			*p_private;
- 	uint64_t		p_adjust;
- 	list_node_t		p_node;
--	refcount_t		p_refcnt;
-+	zfs_refcount_t		p_refcnt;
- };
- 
- typedef enum arc_strategy {
-diff --git a/include/sys/arc_impl.h b/include/sys/arc_impl.h
-index 52863bba4ee..cd42c0c01a2 100644
---- a/include/sys/arc_impl.h
-+++ b/include/sys/arc_impl.h
-@@ -75,12 +75,12 @@ typedef struct arc_state {
- 	/*
- 	 * total amount of evictable data in this state
- 	 */
--	refcount_t arcs_esize[ARC_BUFC_NUMTYPES];
-+	zfs_refcount_t arcs_esize[ARC_BUFC_NUMTYPES];
- 	/*
- 	 * total amount of data in this state; this includes: evictable,
- 	 * non-evictable, ARC_BUFC_DATA, and ARC_BUFC_METADATA.
- 	 */
--	refcount_t arcs_size;
-+	zfs_refcount_t arcs_size;
- 	/*
- 	 * supports the "dbufs" kstat
- 	 */
-@@ -168,7 +168,7 @@ typedef struct l1arc_buf_hdr {
- 	uint32_t		b_l2_hits;
- 
- 	/* self protecting */
--	refcount_t		b_refcnt;
-+	zfs_refcount_t		b_refcnt;
- 
- 	arc_callback_t		*b_acb;
- 	abd_t			*b_pabd;
-@@ -215,7 +215,7 @@ typedef struct l2arc_dev {
- 	kmutex_t		l2ad_mtx;	/* lock for buffer list */
- 	list_t			l2ad_buflist;	/* buffer list */
- 	list_node_t		l2ad_node;	/* device list node */
--	refcount_t		l2ad_alloc;	/* allocated bytes */
-+	zfs_refcount_t		l2ad_alloc;	/* allocated bytes */
- } l2arc_dev_t;
- 
- typedef struct l2arc_buf_hdr {
-diff --git a/include/sys/dbuf.h b/include/sys/dbuf.h
-index ab0950c83c2..eea9e265b00 100644
---- a/include/sys/dbuf.h
-+++ b/include/sys/dbuf.h
-@@ -230,7 +230,7 @@ typedef struct dmu_buf_impl {
- 	 * If nonzero, the buffer can't be destroyed.
- 	 * Protected by db_mtx.
- 	 */
--	refcount_t db_holds;
-+	zfs_refcount_t db_holds;
- 
- 	/* buffer holding our data */
- 	arc_buf_t *db_buf;
-diff --git a/include/sys/dmu_tx.h b/include/sys/dmu_tx.h
-index 6a4bd3fac2c..36d205e9501 100644
---- a/include/sys/dmu_tx.h
-+++ b/include/sys/dmu_tx.h
-@@ -97,8 +97,8 @@ typedef struct dmu_tx_hold {
- 	dmu_tx_t *txh_tx;
- 	list_node_t txh_node;
- 	struct dnode *txh_dnode;
--	refcount_t txh_space_towrite;
--	refcount_t txh_memory_tohold;
-+	zfs_refcount_t txh_space_towrite;
-+	zfs_refcount_t txh_memory_tohold;
- 	enum dmu_tx_hold_type txh_type;
- 	uint64_t txh_arg1;
- 	uint64_t txh_arg2;
-diff --git a/include/sys/dnode.h b/include/sys/dnode.h
-index 0774e663f1b..48ef927d4ad 100644
---- a/include/sys/dnode.h
-+++ b/include/sys/dnode.h
-@@ -335,8 +335,8 @@ struct dnode {
- 	uint8_t *dn_dirtyctx_firstset;		/* dbg: contents meaningless */
- 
- 	/* protected by own devices */
--	refcount_t dn_tx_holds;
--	refcount_t dn_holds;
-+	zfs_refcount_t dn_tx_holds;
-+	zfs_refcount_t dn_holds;
- 
- 	kmutex_t dn_dbufs_mtx;
- 	/*
-diff --git a/include/sys/dsl_crypt.h b/include/sys/dsl_crypt.h
-index 8766ce51ea9..c6d2b0a16ac 100644
---- a/include/sys/dsl_crypt.h
-+++ b/include/sys/dsl_crypt.h
-@@ -62,7 +62,7 @@ typedef struct dsl_wrapping_key {
- 	crypto_key_t wk_key;
- 
- 	/* refcount of number of dsl_crypto_key_t's holding this struct */
--	refcount_t wk_refcnt;
-+	zfs_refcount_t wk_refcnt;
- 
- 	/* dsl directory object that owns this wrapping key */
- 	uint64_t wk_ddobj;
-@@ -112,7 +112,7 @@ typedef struct dsl_crypto_key {
- 	avl_node_t dck_avl_link;
- 
- 	/* refcount of dsl_key_mapping_t's holding this key */
--	refcount_t dck_holds;
-+	zfs_refcount_t dck_holds;
- 
- 	/* master key used to derive encryption keys */
- 	zio_crypt_key_t dck_key;
-@@ -134,7 +134,7 @@ typedef struct dsl_key_mapping {
- 	avl_node_t km_avl_link;
- 
- 	/* refcount of how many users are depending on this mapping */
--	refcount_t km_refcnt;
-+	zfs_refcount_t km_refcnt;
- 
- 	/* dataset this crypto key belongs to (index) */
- 	uint64_t km_dsobj;
-diff --git a/include/sys/dsl_dataset.h b/include/sys/dsl_dataset.h
-index dbe4cb706a1..768241483a2 100644
---- a/include/sys/dsl_dataset.h
-+++ b/include/sys/dsl_dataset.h
-@@ -211,7 +211,7 @@ typedef struct dsl_dataset {
- 	 * Owning counts as a long hold.  See the comments above
- 	 * dsl_pool_hold() for details.
- 	 */
--	refcount_t ds_longholds;
-+	zfs_refcount_t ds_longholds;
- 
- 	/* no locking; only for making guesses */
- 	uint64_t ds_trysnap_txg;
-diff --git a/include/sys/metaslab_impl.h b/include/sys/metaslab_impl.h
-index cc6e8b796d4..aa1c82a0258 100644
---- a/include/sys/metaslab_impl.h
-+++ b/include/sys/metaslab_impl.h
-@@ -184,7 +184,7 @@ struct metaslab_class {
- 	 * number of allocations allowed.
- 	 */
- 	uint64_t		*mc_alloc_max_slots;
--	refcount_t		*mc_alloc_slots;
-+	zfs_refcount_t		*mc_alloc_slots;
- 
- 	uint64_t		mc_alloc_groups; /* # of allocatable groups */
- 
-@@ -256,7 +256,7 @@ struct metaslab_group {
- 	 */
- 	uint64_t		mg_max_alloc_queue_depth;
- 	uint64_t		*mg_cur_max_alloc_queue_depth;
--	refcount_t		*mg_alloc_queue_depth;
-+	zfs_refcount_t		*mg_alloc_queue_depth;
- 	int			mg_allocators;
- 	/*
- 	 * A metalab group that can no longer allocate the minimum block
-diff --git a/include/sys/refcount.h b/include/sys/refcount.h
-index 02002ec2ffd..e20ffbc30f9 100644
---- a/include/sys/refcount.h
-+++ b/include/sys/refcount.h
-@@ -41,17 +41,6 @@ extern "C" {
-  */
- #define	FTAG ((char *)(uintptr_t)__func__)
- 
--/*
-- * Starting with 4.11, torvalds/linux at f405df5, the linux kernel defines a
-- * refcount_t type of its own.  The macro below effectively changes references
-- * in the ZFS code from refcount_t to zfs_refcount_t at compile time, so that
-- * existing code need not be altered, reducing conflicts when landing openZFS
-- * patches.
-- */
--
--#define	refcount_t	zfs_refcount_t
--#define	refcount_add	zfs_refcount_add
--
- #ifdef	ZFS_DEBUG
- typedef struct reference {
- 	list_node_t ref_link;
-@@ -69,23 +58,28 @@ typedef struct refcount {
- 	uint64_t rc_removed_count;
- } zfs_refcount_t;
- 
--/* Note: refcount_t must be initialized with refcount_create[_untracked]() */
--
--void refcount_create(refcount_t *rc);
--void refcount_create_untracked(refcount_t *rc);
--void refcount_create_tracked(refcount_t *rc);
--void refcount_destroy(refcount_t *rc);
--void refcount_destroy_many(refcount_t *rc, uint64_t number);
--int refcount_is_zero(refcount_t *rc);
--int64_t refcount_count(refcount_t *rc);
--int64_t zfs_refcount_add(refcount_t *rc, void *holder_tag);
--int64_t refcount_remove(refcount_t *rc, void *holder_tag);
--int64_t refcount_add_many(refcount_t *rc, uint64_t number, void *holder_tag);
--int64_t refcount_remove_many(refcount_t *rc, uint64_t number, void *holder_tag);
--void refcount_transfer(refcount_t *dst, refcount_t *src);
--void refcount_transfer_ownership(refcount_t *, void *, void *);
--boolean_t refcount_held(refcount_t *, void *);
--boolean_t refcount_not_held(refcount_t *, void *);
-+/*
-+ * Note: zfs_refcount_t must be initialized with
-+ * refcount_create[_untracked]()
-+ */
-+
-+void refcount_create(zfs_refcount_t *rc);
-+void refcount_create_untracked(zfs_refcount_t *rc);
-+void refcount_create_tracked(zfs_refcount_t *rc);
-+void refcount_destroy(zfs_refcount_t *rc);
-+void refcount_destroy_many(zfs_refcount_t *rc, uint64_t number);
-+int refcount_is_zero(zfs_refcount_t *rc);
-+int64_t refcount_count(zfs_refcount_t *rc);
-+int64_t zfs_refcount_add(zfs_refcount_t *rc, void *holder_tag);
-+int64_t refcount_remove(zfs_refcount_t *rc, void *holder_tag);
-+int64_t refcount_add_many(zfs_refcount_t *rc, uint64_t number,
-+    void *holder_tag);
-+int64_t refcount_remove_many(zfs_refcount_t *rc, uint64_t number,
-+    void *holder_tag);
-+void refcount_transfer(zfs_refcount_t *dst, zfs_refcount_t *src);
-+void refcount_transfer_ownership(zfs_refcount_t *, void *, void *);
-+boolean_t refcount_held(zfs_refcount_t *, void *);
-+boolean_t refcount_not_held(zfs_refcount_t *, void *);
- 
- void refcount_init(void);
- void refcount_fini(void);
-@@ -94,7 +88,7 @@ void refcount_fini(void);
- 
- typedef struct refcount {
- 	uint64_t rc_count;
--} refcount_t;
-+} zfs_refcount_t;
- 
- #define	refcount_create(rc) ((rc)->rc_count = 0)
- #define	refcount_create_untracked(rc) ((rc)->rc_count = 0)
-diff --git a/include/sys/rrwlock.h b/include/sys/rrwlock.h
-index 7a328fd6803..e1c1756cf29 100644
---- a/include/sys/rrwlock.h
-+++ b/include/sys/rrwlock.h
-@@ -57,8 +57,8 @@ typedef struct rrwlock {
- 	kmutex_t	rr_lock;
- 	kcondvar_t	rr_cv;
- 	kthread_t	*rr_writer;
--	refcount_t	rr_anon_rcount;
--	refcount_t	rr_linked_rcount;
-+	zfs_refcount_t	rr_anon_rcount;
-+	zfs_refcount_t	rr_linked_rcount;
- 	boolean_t	rr_writer_wanted;
- 	boolean_t	rr_track_all;
- } rrwlock_t;
-diff --git a/include/sys/sa_impl.h b/include/sys/sa_impl.h
-index b68b7610b25..7eddd8750fa 100644
---- a/include/sys/sa_impl.h
-+++ b/include/sys/sa_impl.h
-@@ -110,7 +110,7 @@ typedef struct sa_idx_tab {
- 	list_node_t	sa_next;
- 	sa_lot_t	*sa_layout;
- 	uint16_t	*sa_variable_lengths;
--	refcount_t	sa_refcount;
-+	zfs_refcount_t	sa_refcount;
- 	uint32_t	*sa_idx_tab;	/* array of offsets */
- } sa_idx_tab_t;
- 
-diff --git a/include/sys/spa_impl.h b/include/sys/spa_impl.h
-index 676e8b8a228..9dbdcfcf528 100644
---- a/include/sys/spa_impl.h
-+++ b/include/sys/spa_impl.h
-@@ -139,7 +139,7 @@ typedef struct spa_config_lock {
- 	kthread_t	*scl_writer;
- 	int		scl_write_wanted;
- 	kcondvar_t	scl_cv;
--	refcount_t	scl_count;
-+	zfs_refcount_t	scl_count;
- } spa_config_lock_t;
- 
- typedef struct spa_config_dirent {
-@@ -387,12 +387,12 @@ struct spa {
- 
- 	/*
- 	 * spa_refcount & spa_config_lock must be the last elements
--	 * because refcount_t changes size based on compilation options.
-+	 * because zfs_refcount_t changes size based on compilation options.
- 	 * In order for the MDB module to function correctly, the other
- 	 * fields must remain in the same location.
- 	 */
- 	spa_config_lock_t spa_config_lock[SCL_LOCKS]; /* config changes */
--	refcount_t	spa_refcount;		/* number of opens */
-+	zfs_refcount_t	spa_refcount;		/* number of opens */
- 
- 	taskq_t		*spa_upgrade_taskq;	/* taskq for upgrade jobs */
- };
-diff --git a/include/sys/zap.h b/include/sys/zap.h
-index 43b7fbd263c..7acc3becb5a 100644
---- a/include/sys/zap.h
-+++ b/include/sys/zap.h
-@@ -226,7 +226,7 @@ int zap_lookup_norm_by_dnode(dnode_t *dn, const char *name,
-     boolean_t *ncp);
- 
- int zap_count_write_by_dnode(dnode_t *dn, const char *name,
--    int add, refcount_t *towrite, refcount_t *tooverwrite);
-+    int add, zfs_refcount_t *towrite, zfs_refcount_t *tooverwrite);
- 
- /*
-  * Create an attribute with the given name and value.
-diff --git a/include/sys/zfs_znode.h b/include/sys/zfs_znode.h
-index e82ac9941a2..01f4328f040 100644
---- a/include/sys/zfs_znode.h
-+++ b/include/sys/zfs_znode.h
-@@ -223,7 +223,7 @@ typedef struct znode_hold {
- 	uint64_t	zh_obj;		/* object id */
- 	kmutex_t	zh_lock;	/* lock serializing object access */
- 	avl_node_t	zh_node;	/* avl tree linkage */
--	refcount_t	zh_refcount;	/* active consumer reference count */
-+	zfs_refcount_t	zh_refcount;	/* active consumer reference count */
- } znode_hold_t;
- 
- static inline uint64_t
-diff --git a/module/zfs/arc.c b/module/zfs/arc.c
-index 5e53f987961..cd094f39ee7 100644
---- a/module/zfs/arc.c
-+++ b/module/zfs/arc.c
-@@ -2403,7 +2403,7 @@ add_reference(arc_buf_hdr_t *hdr, void *tag)
- 
- 	state = hdr->b_l1hdr.b_state;
- 
--	if ((refcount_add(&hdr->b_l1hdr.b_refcnt, tag) == 1) &&
-+	if ((zfs_refcount_add(&hdr->b_l1hdr.b_refcnt, tag) == 1) &&
- 	    (state != arc_anon)) {
- 		/* We don't use the L2-only state list. */
- 		if (state != arc_l2c_only) {
-@@ -2997,7 +2997,7 @@ arc_return_buf(arc_buf_t *buf, void *tag)
- 
- 	ASSERT3P(buf->b_data, !=, NULL);
- 	ASSERT(HDR_HAS_L1HDR(hdr));
--	(void) refcount_add(&hdr->b_l1hdr.b_refcnt, tag);
-+	(void) zfs_refcount_add(&hdr->b_l1hdr.b_refcnt, tag);
- 	(void) refcount_remove(&hdr->b_l1hdr.b_refcnt, arc_onloan_tag);
- 
- 	arc_loaned_bytes_update(-arc_buf_size(buf));
-@@ -3011,7 +3011,7 @@ arc_loan_inuse_buf(arc_buf_t *buf, void *tag)
- 
- 	ASSERT3P(buf->b_data, !=, NULL);
- 	ASSERT(HDR_HAS_L1HDR(hdr));
--	(void) refcount_add(&hdr->b_l1hdr.b_refcnt, arc_onloan_tag);
-+	(void) zfs_refcount_add(&hdr->b_l1hdr.b_refcnt, arc_onloan_tag);
- 	(void) refcount_remove(&hdr->b_l1hdr.b_refcnt, tag);
- 
- 	arc_loaned_bytes_update(arc_buf_size(buf));
-@@ -3558,11 +3558,11 @@ arc_hdr_realloc_crypt(arc_buf_hdr_t *hdr, boolean_t need_crypt)
- 	nhdr->b_l1hdr.b_pabd = hdr->b_l1hdr.b_pabd;
- 
- 	/*
--	 * This refcount_add() exists only to ensure that the individual
-+	 * This zfs_refcount_add() exists only to ensure that the individual
- 	 * arc buffers always point to a header that is referenced, avoiding
- 	 * a small race condition that could trigger ASSERTs.
- 	 */
--	(void) refcount_add(&nhdr->b_l1hdr.b_refcnt, FTAG);
-+	(void) zfs_refcount_add(&nhdr->b_l1hdr.b_refcnt, FTAG);
- 	nhdr->b_l1hdr.b_buf = hdr->b_l1hdr.b_buf;
- 	for (buf = nhdr->b_l1hdr.b_buf; buf != NULL; buf = buf->b_next) {
- 		mutex_enter(&buf->b_evict_lock);
-@@ -4313,7 +4313,7 @@ arc_prune_async(int64_t adjust)
- 		if (refcount_count(&ap->p_refcnt) >= 2)
- 			continue;
- 
--		refcount_add(&ap->p_refcnt, ap->p_pfunc);
-+		zfs_refcount_add(&ap->p_refcnt, ap->p_pfunc);
- 		ap->p_adjust = adjust;
- 		if (taskq_dispatch(arc_prune_taskq, arc_prune_task,
- 		    ap, TQ_SLEEP) == TASKQID_INVALID) {
-@@ -6536,7 +6536,7 @@ arc_add_prune_callback(arc_prune_func_t *func, void *private)
- 	refcount_create(&p->p_refcnt);
- 
- 	mutex_enter(&arc_prune_mtx);
--	refcount_add(&p->p_refcnt, &arc_prune_list);
-+	zfs_refcount_add(&p->p_refcnt, &arc_prune_list);
- 	list_insert_head(&arc_prune_list, p);
- 	mutex_exit(&arc_prune_mtx);
- 
-@@ -6808,7 +6808,7 @@ arc_release(arc_buf_t *buf, void *tag)
- 		nhdr->b_l1hdr.b_mfu_hits = 0;
- 		nhdr->b_l1hdr.b_mfu_ghost_hits = 0;
- 		nhdr->b_l1hdr.b_l2_hits = 0;
--		(void) refcount_add(&nhdr->b_l1hdr.b_refcnt, tag);
-+		(void) zfs_refcount_add(&nhdr->b_l1hdr.b_refcnt, tag);
- 		buf->b_hdr = nhdr;
- 
- 		mutex_exit(&buf->b_evict_lock);
-diff --git a/module/zfs/dbuf.c b/module/zfs/dbuf.c
-index f7376875afe..db7df602344 100644
---- a/module/zfs/dbuf.c
-+++ b/module/zfs/dbuf.c
-@@ -223,7 +223,7 @@ static boolean_t dbuf_evict_thread_exit;
-  */
- typedef struct dbuf_cache {
- 	multilist_t *cache;
--	refcount_t size;
-+	zfs_refcount_t size;
- } dbuf_cache_t;
- dbuf_cache_t dbuf_caches[DB_CACHE_MAX];
- 
-@@ -2784,7 +2784,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) zfs_refcount_add(&dn->dn_holds, db);
- 	atomic_inc_32(&dn->dn_dbufs_count);
- 
- 	dprintf_dbuf(db, "db=%p\n", db);
-@@ -3183,7 +3183,7 @@ dbuf_hold_impl_arg(struct dbuf_hold_arg *dh)
- 		}
- 		dh->dh_db->db_caching_status = DB_NO_CACHE;
- 	}
--	(void) refcount_add(&dh->dh_db->db_holds, dh->dh_tag);
-+	(void) zfs_refcount_add(&dh->dh_db->db_holds, dh->dh_tag);
- 	DBUF_VERIFY(dh->dh_db);
- 	mutex_exit(&dh->dh_db->db_mtx);
- 
-@@ -3308,7 +3308,7 @@ dbuf_rm_spill(dnode_t *dn, dmu_tx_t *tx)
- void
- dbuf_add_ref(dmu_buf_impl_t *db, void *tag)
- {
--	int64_t holds = refcount_add(&db->db_holds, tag);
-+	int64_t holds = zfs_refcount_add(&db->db_holds, tag);
- 	VERIFY3S(holds, >, 1);
- }
- 
-@@ -3328,7 +3328,7 @@ dbuf_try_add_ref(dmu_buf_t *db_fake, objset_t *os, uint64_t obj, uint64_t blkid,
- 
- 	if (found_db != NULL) {
- 		if (db == found_db && dbuf_refcount(db) > db->db_dirtycnt) {
--			(void) refcount_add(&db->db_holds, tag);
-+			(void) zfs_refcount_add(&db->db_holds, tag);
- 			result = B_TRUE;
- 		}
- 		mutex_exit(&found_db->db_mtx);
-diff --git a/module/zfs/dmu.c b/module/zfs/dmu.c
-index 8779eb3586c..2ff484b6347 100644
---- a/module/zfs/dmu.c
-+++ b/module/zfs/dmu.c
-@@ -360,7 +360,7 @@ dmu_bonus_hold_impl(objset_t *os, uint64_t object, void *tag, uint32_t flags,
- 	db = dn->dn_bonus;
- 
- 	/* as long as the bonus buf is held, the dnode will be held */
--	if (refcount_add(&db->db_holds, tag) == 1) {
-+	if (zfs_refcount_add(&db->db_holds, tag) == 1) {
- 		VERIFY(dnode_add_ref(dn, db));
- 		atomic_inc_32(&dn->dn_dbufs_count);
- 	}
-diff --git a/module/zfs/dmu_tx.c b/module/zfs/dmu_tx.c
-index c268f3c4046..3dc3f595884 100644
---- a/module/zfs/dmu_tx.c
-+++ b/module/zfs/dmu_tx.c
-@@ -114,7 +114,7 @@ dmu_tx_hold_dnode_impl(dmu_tx_t *tx, dnode_t *dn, enum dmu_tx_hold_type type,
- 	dmu_tx_hold_t *txh;
- 
- 	if (dn != NULL) {
--		(void) refcount_add(&dn->dn_holds, tx);
-+		(void) zfs_refcount_add(&dn->dn_holds, tx);
- 		if (tx->tx_txg != 0) {
- 			mutex_enter(&dn->dn_mtx);
- 			/*
-@@ -124,7 +124,7 @@ dmu_tx_hold_dnode_impl(dmu_tx_t *tx, dnode_t *dn, enum dmu_tx_hold_type type,
- 			 */
- 			ASSERT(dn->dn_assigned_txg == 0);
- 			dn->dn_assigned_txg = tx->tx_txg;
--			(void) refcount_add(&dn->dn_tx_holds, tx);
-+			(void) zfs_refcount_add(&dn->dn_tx_holds, tx);
- 			mutex_exit(&dn->dn_mtx);
- 		}
- 	}
-@@ -932,7 +932,7 @@ dmu_tx_try_assign(dmu_tx_t *tx, uint64_t txg_how)
- 			if (dn->dn_assigned_txg == 0)
- 				dn->dn_assigned_txg = tx->tx_txg;
- 			ASSERT3U(dn->dn_assigned_txg, ==, tx->tx_txg);
--			(void) refcount_add(&dn->dn_tx_holds, tx);
-+			(void) zfs_refcount_add(&dn->dn_tx_holds, tx);
- 			mutex_exit(&dn->dn_mtx);
- 		}
- 		towrite += refcount_count(&txh->txh_space_towrite);
-diff --git a/module/zfs/dnode.c b/module/zfs/dnode.c
-index 4e2a733830b..b0b7ea7102b 100644
---- a/module/zfs/dnode.c
-+++ b/module/zfs/dnode.c
-@@ -1304,7 +1304,7 @@ dnode_hold_impl(objset_t *os, uint64_t object, int flag, int slots,
- 		if ((flag & DNODE_MUST_BE_FREE) && type != DMU_OT_NONE)
- 			return (SET_ERROR(EEXIST));
- 		DNODE_VERIFY(dn);
--		(void) refcount_add(&dn->dn_holds, tag);
-+		(void) zfs_refcount_add(&dn->dn_holds, tag);
- 		*dnp = dn;
- 		return (0);
- 	}
-@@ -1527,7 +1527,7 @@ dnode_hold_impl(objset_t *os, uint64_t object, int flag, int slots,
- 		    ENOENT : EEXIST));
- 	}
- 
--	if (refcount_add(&dn->dn_holds, tag) == 1)
-+	if (zfs_refcount_add(&dn->dn_holds, tag) == 1)
- 		dbuf_add_ref(db, dnh);
- 
- 	mutex_exit(&dn->dn_mtx);
-@@ -1567,7 +1567,7 @@ dnode_add_ref(dnode_t *dn, void *tag)
- 		mutex_exit(&dn->dn_mtx);
- 		return (FALSE);
- 	}
--	VERIFY(1 < refcount_add(&dn->dn_holds, tag));
-+	VERIFY(1 < zfs_refcount_add(&dn->dn_holds, tag));
- 	mutex_exit(&dn->dn_mtx);
- 	return (TRUE);
- }
-diff --git a/module/zfs/dsl_crypt.c b/module/zfs/dsl_crypt.c
-index f0878c93477..6beb958c1f5 100644
---- a/module/zfs/dsl_crypt.c
-+++ b/module/zfs/dsl_crypt.c
-@@ -74,7 +74,7 @@
- static void
- dsl_wrapping_key_hold(dsl_wrapping_key_t *wkey, void *tag)
- {
--	(void) refcount_add(&wkey->wk_refcnt, tag);
-+	(void) zfs_refcount_add(&wkey->wk_refcnt, tag);
- }
- 
- static void
-@@ -605,7 +605,7 @@ dsl_crypto_key_open(objset_t *mos, dsl_wrapping_key_t *wkey,
- 	dsl_wrapping_key_hold(wkey, dck);
- 	dck->dck_wkey = wkey;
- 	dck->dck_obj = dckobj;
--	refcount_add(&dck->dck_holds, tag);
-+	zfs_refcount_add(&dck->dck_holds, tag);
- 
- 	*dck_out = dck;
- 	return (0);
-@@ -641,7 +641,7 @@ spa_keystore_dsl_key_hold_impl(spa_t *spa, uint64_t dckobj, void *tag,
- 	}
- 
- 	/* increment the refcount */
--	refcount_add(&found_dck->dck_holds, tag);
-+	zfs_refcount_add(&found_dck->dck_holds, tag);
- 
- 	*dck_out = found_dck;
- 	return (0);
-@@ -970,9 +970,9 @@ spa_keystore_create_mapping_impl(spa_t *spa, uint64_t dsobj,
- 	found_km = avl_find(&spa->spa_keystore.sk_key_mappings, km, &where);
- 	if (found_km != NULL) {
- 		should_free = B_TRUE;
--		refcount_add(&found_km->km_refcnt, tag);
-+		zfs_refcount_add(&found_km->km_refcnt, tag);
- 	} else {
--		refcount_add(&km->km_refcnt, tag);
-+		zfs_refcount_add(&km->km_refcnt, tag);
- 		avl_insert(&spa->spa_keystore.sk_key_mappings, km, where);
- 	}
- 
-@@ -1072,7 +1072,7 @@ spa_keystore_lookup_key(spa_t *spa, uint64_t dsobj, void *tag,
- 	}
- 
- 	if (found_km && tag)
--		refcount_add(&found_km->km_key->dck_holds, tag);
-+		zfs_refcount_add(&found_km->km_key->dck_holds, tag);
- 
- 	rw_exit(&spa->spa_keystore.sk_km_lock);
- 
-diff --git a/module/zfs/dsl_dataset.c b/module/zfs/dsl_dataset.c
-index b6e3b9a5c7f..7546a0765c2 100644
---- a/module/zfs/dsl_dataset.c
-+++ b/module/zfs/dsl_dataset.c
-@@ -727,7 +727,7 @@ void
- dsl_dataset_long_hold(dsl_dataset_t *ds, void *tag)
- {
- 	ASSERT(dsl_pool_config_held(ds->ds_dir->dd_pool));
--	(void) refcount_add(&ds->ds_longholds, tag);
-+	(void) zfs_refcount_add(&ds->ds_longholds, tag);
- }
- 
- void
-diff --git a/module/zfs/dsl_scan.c b/module/zfs/dsl_scan.c
-index f3c869538ce..ee12185cdde 100644
---- a/module/zfs/dsl_scan.c
-+++ b/module/zfs/dsl_scan.c
-@@ -273,7 +273,7 @@ struct dsl_scan_io_queue {
- 
- /* private data for dsl_scan_prefetch_cb() */
- typedef struct scan_prefetch_ctx {
--	refcount_t spc_refcnt;		/* refcount for memory management */
-+	zfs_refcount_t spc_refcnt;	/* refcount for memory management */
- 	dsl_scan_t *spc_scn;		/* dsl_scan_t for the pool */
- 	boolean_t spc_root;		/* is this prefetch for an objset? */
- 	uint8_t spc_indblkshift;	/* dn_indblkshift of current dnode */
-@@ -1327,7 +1327,7 @@ scan_prefetch_ctx_create(dsl_scan_t *scn, dnode_phys_t *dnp, void *tag)
- 
- 	spc = kmem_alloc(sizeof (scan_prefetch_ctx_t), KM_SLEEP);
- 	refcount_create(&spc->spc_refcnt);
--	refcount_add(&spc->spc_refcnt, tag);
-+	zfs_refcount_add(&spc->spc_refcnt, tag);
- 	spc->spc_scn = scn;
- 	if (dnp != NULL) {
- 		spc->spc_datablkszsec = dnp->dn_datablkszsec;
-@@ -1345,7 +1345,7 @@ scan_prefetch_ctx_create(dsl_scan_t *scn, dnode_phys_t *dnp, void *tag)
- static void
- scan_prefetch_ctx_add_ref(scan_prefetch_ctx_t *spc, void *tag)
- {
--	refcount_add(&spc->spc_refcnt, tag);
-+	zfs_refcount_add(&spc->spc_refcnt, tag);
- }
- 
- static boolean_t
-diff --git a/module/zfs/metaslab.c b/module/zfs/metaslab.c
-index ac361abb67e..f657128d040 100644
---- a/module/zfs/metaslab.c
-+++ b/module/zfs/metaslab.c
-@@ -247,7 +247,7 @@ metaslab_class_create(spa_t *spa, metaslab_ops_t *ops)
- 	mc->mc_ops = ops;
- 	mutex_init(&mc->mc_lock, NULL, MUTEX_DEFAULT, NULL);
- 	mc->mc_alloc_slots = kmem_zalloc(spa->spa_alloc_count *
--	    sizeof (refcount_t), KM_SLEEP);
-+	    sizeof (zfs_refcount_t), KM_SLEEP);
- 	mc->mc_alloc_max_slots = kmem_zalloc(spa->spa_alloc_count *
- 	    sizeof (uint64_t), KM_SLEEP);
- 	for (int i = 0; i < spa->spa_alloc_count; i++)
-@@ -268,7 +268,7 @@ metaslab_class_destroy(metaslab_class_t *mc)
- 	for (int i = 0; i < mc->mc_spa->spa_alloc_count; i++)
- 		refcount_destroy(&mc->mc_alloc_slots[i]);
- 	kmem_free(mc->mc_alloc_slots, mc->mc_spa->spa_alloc_count *
--	    sizeof (refcount_t));
-+	    sizeof (zfs_refcount_t));
- 	kmem_free(mc->mc_alloc_max_slots, mc->mc_spa->spa_alloc_count *
- 	    sizeof (uint64_t));
- 	mutex_destroy(&mc->mc_lock);
-@@ -648,8 +648,8 @@ metaslab_group_create(metaslab_class_t *mc, vdev_t *vd, int allocators)
- 	mg->mg_no_free_space = B_TRUE;
- 	mg->mg_allocators = allocators;
- 
--	mg->mg_alloc_queue_depth = kmem_zalloc(allocators * sizeof (refcount_t),
--	    KM_SLEEP);
-+	mg->mg_alloc_queue_depth = kmem_zalloc(allocators *
-+	    sizeof (zfs_refcount_t), KM_SLEEP);
- 	mg->mg_cur_max_alloc_queue_depth = kmem_zalloc(allocators *
- 	    sizeof (uint64_t), KM_SLEEP);
- 	for (int i = 0; i < allocators; i++) {
-@@ -687,7 +687,7 @@ metaslab_group_destroy(metaslab_group_t *mg)
- 		mg->mg_cur_max_alloc_queue_depth[i] = 0;
- 	}
- 	kmem_free(mg->mg_alloc_queue_depth, mg->mg_allocators *
--	    sizeof (refcount_t));
-+	    sizeof (zfs_refcount_t));
- 	kmem_free(mg->mg_cur_max_alloc_queue_depth, mg->mg_allocators *
- 	    sizeof (uint64_t));
- 
-@@ -2905,7 +2905,7 @@ metaslab_group_alloc_increment(spa_t *spa, uint64_t vdev, void *tag, int flags,
- 	if (!mg->mg_class->mc_alloc_throttle_enabled)
- 		return;
- 
--	(void) refcount_add(&mg->mg_alloc_queue_depth[allocator], tag);
-+	(void) zfs_refcount_add(&mg->mg_alloc_queue_depth[allocator], tag);
- }
- 
- static void
-@@ -3852,7 +3852,7 @@ metaslab_class_throttle_reserve(metaslab_class_t *mc, int slots, int allocator,
- 		 */
- 		for (int d = 0; d < slots; d++) {
- 			reserved_slots =
--			    refcount_add(&mc->mc_alloc_slots[allocator],
-+			    zfs_refcount_add(&mc->mc_alloc_slots[allocator],
- 			    zio);
- 		}
- 		zio->io_flags |= ZIO_FLAG_IO_ALLOCATING;
-diff --git a/module/zfs/refcount.c b/module/zfs/refcount.c
-index a151aceaecf..13f9bb6b76e 100644
---- a/module/zfs/refcount.c
-+++ b/module/zfs/refcount.c
-@@ -55,7 +55,7 @@ refcount_fini(void)
- }
- 
- void
--refcount_create(refcount_t *rc)
-+refcount_create(zfs_refcount_t *rc)
- {
- 	mutex_init(&rc->rc_mtx, NULL, MUTEX_DEFAULT, NULL);
- 	list_create(&rc->rc_list, sizeof (reference_t),
-@@ -68,21 +68,21 @@ refcount_create(refcount_t *rc)
- }
- 
- void
--refcount_create_tracked(refcount_t *rc)
-+refcount_create_tracked(zfs_refcount_t *rc)
- {
- 	refcount_create(rc);
- 	rc->rc_tracked = B_TRUE;
- }
- 
- void
--refcount_create_untracked(refcount_t *rc)
-+refcount_create_untracked(zfs_refcount_t *rc)
- {
- 	refcount_create(rc);
- 	rc->rc_tracked = B_FALSE;
- }
- 
- void
--refcount_destroy_many(refcount_t *rc, uint64_t number)
-+refcount_destroy_many(zfs_refcount_t *rc, uint64_t number)
- {
- 	reference_t *ref;
- 
-@@ -103,25 +103,25 @@ refcount_destroy_many(refcount_t *rc, uint64_t number)
- }
- 
- void
--refcount_destroy(refcount_t *rc)
-+refcount_destroy(zfs_refcount_t *rc)
- {
- 	refcount_destroy_many(rc, 0);
- }
- 
- int
--refcount_is_zero(refcount_t *rc)
-+refcount_is_zero(zfs_refcount_t *rc)
- {
- 	return (rc->rc_count == 0);
- }
- 
- int64_t
--refcount_count(refcount_t *rc)
-+refcount_count(zfs_refcount_t *rc)
- {
- 	return (rc->rc_count);
- }
- 
- int64_t
--refcount_add_many(refcount_t *rc, uint64_t number, void *holder)
-+refcount_add_many(zfs_refcount_t *rc, uint64_t number, void *holder)
- {
- 	reference_t *ref = NULL;
- 	int64_t count;
-@@ -143,13 +143,13 @@ refcount_add_many(refcount_t *rc, uint64_t number, void *holder)
- }
- 
- int64_t
--zfs_refcount_add(refcount_t *rc, void *holder)
-+zfs_refcount_add(zfs_refcount_t *rc, void *holder)
- {
- 	return (refcount_add_many(rc, 1, holder));
- }
- 
- int64_t
--refcount_remove_many(refcount_t *rc, uint64_t number, void *holder)
-+refcount_remove_many(zfs_refcount_t *rc, uint64_t number, void *holder)
- {
- 	reference_t *ref;
- 	int64_t count;
-@@ -197,13 +197,13 @@ refcount_remove_many(refcount_t *rc, uint64_t number, void *holder)
- }
- 
- int64_t
--refcount_remove(refcount_t *rc, void *holder)
-+refcount_remove(zfs_refcount_t *rc, void *holder)
- {
- 	return (refcount_remove_many(rc, 1, holder));
- }
- 
- void
--refcount_transfer(refcount_t *dst, refcount_t *src)
-+refcount_transfer(zfs_refcount_t *dst, zfs_refcount_t *src)
- {
- 	int64_t count, removed_count;
- 	list_t list, removed;
-@@ -234,7 +234,7 @@ refcount_transfer(refcount_t *dst, refcount_t *src)
- }
- 
- void
--refcount_transfer_ownership(refcount_t *rc, void *current_holder,
-+refcount_transfer_ownership(zfs_refcount_t *rc, void *current_holder,
-     void *new_holder)
- {
- 	reference_t *ref;
-@@ -264,7 +264,7 @@ refcount_transfer_ownership(refcount_t *rc, void *current_holder,
-  * might be held.
-  */
- boolean_t
--refcount_held(refcount_t *rc, void *holder)
-+refcount_held(zfs_refcount_t *rc, void *holder)
- {
- 	reference_t *ref;
- 
-@@ -292,7 +292,7 @@ refcount_held(refcount_t *rc, void *holder)
-  * since the reference might not be held.
-  */
- boolean_t
--refcount_not_held(refcount_t *rc, void *holder)
-+refcount_not_held(zfs_refcount_t *rc, void *holder)
- {
- 	reference_t *ref;
- 
-diff --git a/module/zfs/rrwlock.c b/module/zfs/rrwlock.c
-index 704f76067bf..effff330522 100644
---- a/module/zfs/rrwlock.c
-+++ b/module/zfs/rrwlock.c
-@@ -183,9 +183,9 @@ rrw_enter_read_impl(rrwlock_t *rrl, boolean_t prio, void *tag)
- 	if (rrl->rr_writer_wanted || rrl->rr_track_all) {
- 		/* may or may not be a re-entrant enter */
- 		rrn_add(rrl, tag);
--		(void) refcount_add(&rrl->rr_linked_rcount, tag);
-+		(void) zfs_refcount_add(&rrl->rr_linked_rcount, tag);
- 	} else {
--		(void) refcount_add(&rrl->rr_anon_rcount, tag);
-+		(void) zfs_refcount_add(&rrl->rr_anon_rcount, tag);
- 	}
- 	ASSERT(rrl->rr_writer == NULL);
- 	mutex_exit(&rrl->rr_lock);
-diff --git a/module/zfs/sa.c b/module/zfs/sa.c
-index caa91bc4c4e..0856a4b8ff7 100644
---- a/module/zfs/sa.c
-+++ b/module/zfs/sa.c
-@@ -1347,7 +1347,7 @@ sa_idx_tab_hold(objset_t *os, sa_idx_tab_t *idx_tab)
- 	ASSERTV(sa_os_t *sa = os->os_sa);
- 
- 	ASSERT(MUTEX_HELD(&sa->sa_lock));
--	(void) refcount_add(&idx_tab->sa_refcount, NULL);
-+	(void) zfs_refcount_add(&idx_tab->sa_refcount, NULL);
- }
- 
- void
-diff --git a/module/zfs/spa_misc.c b/module/zfs/spa_misc.c
-index 343b01dd6aa..c19f48ac526 100644
---- a/module/zfs/spa_misc.c
-+++ b/module/zfs/spa_misc.c
-@@ -81,7 +81,7 @@
-  *	definition they must have an existing reference, and will never need
-  *	to lookup a spa_t by name.
-  *
-- * spa_refcount (per-spa refcount_t protected by mutex)
-+ * spa_refcount (per-spa zfs_refcount_t protected by mutex)
-  *
-  *	This reference count keep track of any active users of the spa_t.  The
-  *	spa_t cannot be destroyed or freed while this is non-zero.  Internally,
-@@ -478,7 +478,7 @@ spa_config_tryenter(spa_t *spa, int locks, void *tag, krw_t rw)
- 			}
- 			scl->scl_writer = curthread;
- 		}
--		(void) refcount_add(&scl->scl_count, tag);
-+		(void) zfs_refcount_add(&scl->scl_count, tag);
- 		mutex_exit(&scl->scl_lock);
- 	}
- 	return (1);
-@@ -511,7 +511,7 @@ spa_config_enter(spa_t *spa, int locks, void *tag, krw_t rw)
- 			}
- 			scl->scl_writer = curthread;
- 		}
--		(void) refcount_add(&scl->scl_count, tag);
-+		(void) zfs_refcount_add(&scl->scl_count, tag);
- 		mutex_exit(&scl->scl_lock);
- 	}
- 	ASSERT3U(wlocks_held, <=, locks);
-@@ -841,7 +841,7 @@ spa_open_ref(spa_t *spa, void *tag)
- {
- 	ASSERT(refcount_count(&spa->spa_refcount) >= spa->spa_minref ||
- 	    MUTEX_HELD(&spa_namespace_lock));
--	(void) refcount_add(&spa->spa_refcount, tag);
-+	(void) zfs_refcount_add(&spa->spa_refcount, tag);
- }
- 
- /*
-diff --git a/module/zfs/zfs_ctldir.c b/module/zfs/zfs_ctldir.c
-index f5cfdb55d79..6a7b7bbb5e7 100644
---- a/module/zfs/zfs_ctldir.c
-+++ b/module/zfs/zfs_ctldir.c
-@@ -117,7 +117,7 @@ typedef struct {
- 	taskqid_t	se_taskqid;	/* scheduled unmount taskqid */
- 	avl_node_t	se_node_name;	/* zfs_snapshots_by_name link */
- 	avl_node_t	se_node_objsetid; /* zfs_snapshots_by_objsetid link */
--	refcount_t	se_refcount;	/* reference count */
-+	zfs_refcount_t	se_refcount;	/* reference count */
- } zfs_snapentry_t;
- 
- static void zfsctl_snapshot_unmount_delay_impl(zfs_snapentry_t *se, int delay);
-@@ -166,7 +166,7 @@ zfsctl_snapshot_free(zfs_snapentry_t *se)
- static void
- zfsctl_snapshot_hold(zfs_snapentry_t *se)
- {
--	refcount_add(&se->se_refcount, NULL);
-+	zfs_refcount_add(&se->se_refcount, NULL);
- }
- 
- /*
-@@ -189,7 +189,7 @@ static void
- zfsctl_snapshot_add(zfs_snapentry_t *se)
- {
- 	ASSERT(RW_WRITE_HELD(&zfs_snapshot_lock));
--	refcount_add(&se->se_refcount, NULL);
-+	zfs_refcount_add(&se->se_refcount, NULL);
- 	avl_add(&zfs_snapshots_by_name, se);
- 	avl_add(&zfs_snapshots_by_objsetid, se);
- }
-@@ -266,7 +266,7 @@ zfsctl_snapshot_find_by_name(char *snapname)
- 	search.se_name = snapname;
- 	se = avl_find(&zfs_snapshots_by_name, &search, NULL);
- 	if (se)
--		refcount_add(&se->se_refcount, NULL);
-+		zfs_refcount_add(&se->se_refcount, NULL);
- 
- 	return (se);
- }
-@@ -287,7 +287,7 @@ zfsctl_snapshot_find_by_objsetid(spa_t *spa, uint64_t objsetid)
- 	search.se_objsetid = objsetid;
- 	se = avl_find(&zfs_snapshots_by_objsetid, &search, NULL);
- 	if (se)
--		refcount_add(&se->se_refcount, NULL);
-+		zfs_refcount_add(&se->se_refcount, NULL);
- 
- 	return (se);
- }
-diff --git a/module/zfs/zfs_znode.c b/module/zfs/zfs_znode.c
-index f037d4c967c..a4991476289 100644
---- a/module/zfs/zfs_znode.c
-+++ b/module/zfs/zfs_znode.c
-@@ -264,7 +264,7 @@ zfs_znode_hold_enter(zfsvfs_t *zfsvfs, uint64_t obj)
- 		ASSERT3U(zh->zh_obj, ==, obj);
- 		found = B_TRUE;
- 	}
--	refcount_add(&zh->zh_refcount, NULL);
-+	zfs_refcount_add(&zh->zh_refcount, NULL);
- 	mutex_exit(&zfsvfs->z_hold_locks[i]);
- 
- 	if (found == B_TRUE)
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/zfs.git/commitdiff/7cc6cb14d2205c48e5a469cb838784848e1a7500




More information about the pld-cvs-commit mailing list