diff options
author | mm <mm@FreeBSD.org> | 2010-05-13 20:32:56 +0000 |
---|---|---|
committer | mm <mm@FreeBSD.org> | 2010-05-13 20:32:56 +0000 |
commit | 6f4ba1587b481253ce8265f50114ebe438759779 (patch) | |
tree | 1cb19e0cf3e413fa2f84c4f8c268f6161be50805 /sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c | |
parent | cdb02238eea11b2e4495d0b09780e3669bce9e4c (diff) | |
download | FreeBSD-src-6f4ba1587b481253ce8265f50114ebe438759779.zip FreeBSD-src-6f4ba1587b481253ce8265f50114ebe438759779.tar.gz |
Import OpenSolaris revision 7837:001de5627df3
It includes the following changes:
- parallel reads in traversal code (Bug ID 6333409)
- faster traversal for zfs send (Bug ID 6418042)
- traversal code cleanup (Bug ID 6725675)
- fix for two scrub related bugs (Bug ID 6729696, 6730101)
- fix assertion in dbuf_verify (Bug ID 6752226)
- fix panic during zfs send with i/o errors (Bug ID 6577985)
- replace P2CROSS with P2BOUNDARY (Bug ID 6725680)
List of OpenSolaris Bug IDs:
6333409, 6418042, 6757112, 6725668, 6725675, 6725680,
6725698, 6729696, 6730101, 6752226, 6577985, 6755042
Approved by: pjd, delphij (mentor)
Obtained from: OpenSolaris (multiple Bug IDs)
MFC after: 1 week
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c index 7a41d4f..5735d31 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c @@ -428,8 +428,6 @@ spa_add(const char *name, const char *altroot) spa = kmem_zalloc(sizeof (spa_t), KM_SLEEP); - rw_init(&spa->spa_traverse_lock, NULL, RW_DEFAULT, NULL); - mutex_init(&spa->spa_async_lock, NULL, MUTEX_DEFAULT, NULL); mutex_init(&spa->spa_async_root_lock, NULL, MUTEX_DEFAULT, NULL); mutex_init(&spa->spa_scrub_lock, NULL, MUTEX_DEFAULT, NULL); @@ -513,8 +511,6 @@ spa_remove(spa_t *spa) spa_config_lock_destroy(spa); - rw_destroy(&spa->spa_traverse_lock); - cv_destroy(&spa->spa_async_cv); cv_destroy(&spa->spa_async_root_cv); cv_destroy(&spa->spa_scrub_io_cv); @@ -1127,16 +1123,10 @@ zfs_panic_recover(const char *fmt, ...) * ========================================================================== */ -krwlock_t * -spa_traverse_rwlock(spa_t *spa) -{ - return (&spa->spa_traverse_lock); -} - boolean_t -spa_traverse_wanted(spa_t *spa) +spa_shutting_down(spa_t *spa) { - return (spa->spa_traverse_wanted); + return (spa->spa_async_suspended); } dsl_pool_t * @@ -1205,7 +1195,7 @@ spa_first_txg(spa_t *spa) return (spa->spa_first_txg); } -int +pool_state_t spa_state(spa_t *spa) { return (spa->spa_state); |