spa.c (307277) | spa.c (310515) |
---|---|
1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE --- 7077 unchanged lines hidden (view full) --- 7086 * let it become visible to the config cache. 7087 */ 7088 if (spa->spa_config_syncing != NULL) { 7089 spa_config_set(spa, spa->spa_config_syncing); 7090 spa->spa_config_txg = txg; 7091 spa->spa_config_syncing = NULL; 7092 } 7093 | 1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE --- 7077 unchanged lines hidden (view full) --- 7086 * let it become visible to the config cache. 7087 */ 7088 if (spa->spa_config_syncing != NULL) { 7089 spa_config_set(spa, spa->spa_config_syncing); 7090 spa->spa_config_txg = txg; 7091 spa->spa_config_syncing = NULL; 7092 } 7093 |
7094 spa->spa_ubsync = spa->spa_uberblock; 7095 | |
7096 dsl_pool_sync_done(dp, txg); 7097 7098 mutex_enter(&spa->spa_alloc_lock); 7099 VERIFY0(avl_numnodes(&spa->spa_alloc_tree)); 7100 mutex_exit(&spa->spa_alloc_lock); 7101 7102 /* 7103 * Update usable space statistics. --- 8 unchanged lines hidden (view full) --- 7112 * since vdev_config_sync(). 7113 */ 7114 ASSERT(txg_list_empty(&dp->dp_dirty_datasets, txg)); 7115 ASSERT(txg_list_empty(&dp->dp_dirty_dirs, txg)); 7116 ASSERT(txg_list_empty(&spa->spa_vdev_txg_list, txg)); 7117 7118 spa->spa_sync_pass = 0; 7119 | 7094 dsl_pool_sync_done(dp, txg); 7095 7096 mutex_enter(&spa->spa_alloc_lock); 7097 VERIFY0(avl_numnodes(&spa->spa_alloc_tree)); 7098 mutex_exit(&spa->spa_alloc_lock); 7099 7100 /* 7101 * Update usable space statistics. --- 8 unchanged lines hidden (view full) --- 7110 * since vdev_config_sync(). 7111 */ 7112 ASSERT(txg_list_empty(&dp->dp_dirty_datasets, txg)); 7113 ASSERT(txg_list_empty(&dp->dp_dirty_dirs, txg)); 7114 ASSERT(txg_list_empty(&spa->spa_vdev_txg_list, txg)); 7115 7116 spa->spa_sync_pass = 0; 7117 |
7118 /* 7119 * Update the last synced uberblock here. We want to do this at 7120 * the end of spa_sync() so that consumers of spa_last_synced_txg() 7121 * will be guaranteed that all the processing associated with 7122 * that txg has been completed. 7123 */ 7124 spa->spa_ubsync = spa->spa_uberblock; |
|
7120 spa_config_exit(spa, SCL_CONFIG, FTAG); 7121 7122 spa_handle_ignored_writes(spa); 7123 7124 /* 7125 * If any async tasks have been requested, kick them off. 7126 */ 7127 spa_async_dispatch(spa); --- 229 unchanged lines hidden --- | 7125 spa_config_exit(spa, SCL_CONFIG, FTAG); 7126 7127 spa_handle_ignored_writes(spa); 7128 7129 /* 7130 * If any async tasks have been requested, kick them off. 7131 */ 7132 spa_async_dispatch(spa); --- 229 unchanged lines hidden --- |