HomeFreeBSD

Remove refcount from spa_config_*()

Description

Remove refcount from spa_config_*()

The only reason for spa_config_*() to use refcount instead of simple
non-atomic (thanks to scl_lock) variable for scl_count is tracking,
hard disabled for the last 8 years. Switch to simple int scl_count
reduces the lock hold time by avoiding atomic, plus makes structure
fit into single cache line, reducing the locks contention.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Mark Maybee <mark.maybee@delphix.com>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Sponsored-By: iXsystems, Inc.
Closes #12287

Details

Provenance
mavAuthored on Jul 1 2021, 3:16 PM
GitHub <noreply@github.com>Committed on Jul 1 2021, 3:16 PM
Parents
rGcfc564f9b11e: ZED: Match added disk by pool/vdev GUID if found (#12217)
Branches
Unknown
Tags
Unknown

Event Timeline