Home
last modified time | relevance | path

Searched refs:spa (Results 1 – 25 of 71) sorted by relevance

123

/titanic_50/usr/src/uts/common/fs/zfs/
H A Dspa_misc.c354 spa_config_lock_init(spa_t *spa) in spa_config_lock_init() argument
357 spa_config_lock_t *scl = &spa->spa_config_lock[i]; in spa_config_lock_init()
367 spa_config_lock_destroy(spa_t *spa) in spa_config_lock_destroy() argument
370 spa_config_lock_t *scl = &spa->spa_config_lock[i]; in spa_config_lock_destroy()
380 spa_config_tryenter(spa_t *spa, int locks, void *tag, krw_t rw) in spa_config_tryenter() argument
383 spa_config_lock_t *scl = &spa->spa_config_lock[i]; in spa_config_tryenter()
390 spa_config_exit(spa, locks & ((1 << i) - 1), in spa_config_tryenter()
398 spa_config_exit(spa, locks & ((1 << i) - 1), in spa_config_tryenter()
411 spa_config_enter(spa_t *spa, int locks, void *tag, krw_t rw) in spa_config_enter() argument
418 spa_config_lock_t *scl = &spa->spa_config_lock[i]; in spa_config_enter()
[all …]
H A Dspa.c144 static boolean_t spa_has_active_shared_spare(spa_t *spa);
145 static int spa_load_impl(spa_t *spa, uint64_t, nvlist_t *config,
148 static void spa_vdev_resilver_done(spa_t *spa);
196 spa_prop_get_config(spa_t *spa, nvlist_t **nvp) in spa_prop_get_config() argument
198 vdev_t *rvd = spa->spa_root_vdev; in spa_prop_get_config()
199 dsl_pool_t *pool = spa->spa_dsl_pool; in spa_prop_get_config()
203 metaslab_class_t *mc = spa_normal_class(spa); in spa_prop_get_config()
205 ASSERT(MUTEX_HELD(&spa->spa_props_lock)); in spa_prop_get_config()
208 alloc = metaslab_class_get_alloc(spa_normal_class(spa)); in spa_prop_get_config()
209 size = metaslab_class_get_space(spa_normal_class(spa)); in spa_prop_get_config()
[all …]
H A Dspa_errlog.c93 spa_log_error(spa_t *spa, zio_t *zio) in spa_log_error() argument
105 if (spa_load_state(spa) == SPA_LOAD_TRYIMPORT) in spa_log_error()
108 mutex_enter(&spa->spa_errlist_lock); in spa_log_error()
114 if (spa->spa_scrub_active || spa->spa_scrub_finished) in spa_log_error()
115 tree = &spa->spa_errlist_scrub; in spa_log_error()
117 tree = &spa->spa_errlist_last; in spa_log_error()
121 mutex_exit(&spa->spa_errlist_lock); in spa_log_error()
129 mutex_exit(&spa->spa_errlist_lock); in spa_log_error()
138 spa_get_errlog_size(spa_t *spa) in spa_get_errlog_size() argument
142 mutex_enter(&spa->spa_errlog_lock); in spa_get_errlog_size()
[all …]
H A Dzfeature.c174 spa_features_check(spa_t *spa, boolean_t for_write, in spa_features_check() argument
177 objset_t *os = spa->spa_meta_objset; in spa_features_check()
182 spa->spa_feat_for_write_obj : spa->spa_feat_for_read_obj; in spa_features_check()
204 if (zap_lookup(os, spa->spa_feat_desc_obj, in spa_features_check()
226 feature_get_refcount(spa_t *spa, zfeature_info_t *feature, uint64_t *res) in feature_get_refcount() argument
229 if (spa->spa_feat_refcount_cache[feature->fi_feature] == in feature_get_refcount()
233 *res = spa->spa_feat_refcount_cache[feature->fi_feature]; in feature_get_refcount()
243 feature_get_refcount_from_disk(spa_t *spa, zfeature_info_t *feature, in feature_get_refcount_from_disk() argument
249 spa->spa_feat_for_write_obj : spa->spa_feat_for_read_obj; in feature_get_refcount_from_disk()
258 err = zap_lookup(spa->spa_meta_objset, zapobj, in feature_get_refcount_from_disk()
[all …]
H A Dspa_config.c229 spa_t *spa = NULL; in spa_config_sync() local
237 while ((spa = spa_next(spa)) != NULL) { in spa_config_sync()
245 if ((spa == target && removing) || in spa_config_sync()
246 !spa_writeable(spa)) in spa_config_sync()
249 mutex_enter(&spa->spa_props_lock); in spa_config_sync()
250 tdp = list_head(&spa->spa_config_list); in spa_config_sync()
251 if (spa->spa_config == NULL || in spa_config_sync()
254 mutex_exit(&spa->spa_props_lock); in spa_config_sync()
262 VERIFY(nvlist_add_nvlist(nvl, spa->spa_name, in spa_config_sync()
263 spa->spa_config) == 0); in spa_config_sync()
[all …]
H A Dspa_history.c86 spa_history_create_obj(spa_t *spa, dmu_tx_t *tx) in spa_history_create_obj() argument
90 objset_t *mos = spa->spa_meta_objset; in spa_history_create_obj()
92 ASSERT(spa->spa_history == 0); in spa_history_create_obj()
93 spa->spa_history = dmu_object_alloc(mos, DMU_OT_SPA_HISTORY, in spa_history_create_obj()
99 &spa->spa_history, tx) == 0); in spa_history_create_obj()
101 VERIFY(0 == dmu_bonus_hold(mos, spa->spa_history, FTAG, &dbp)); in spa_history_create_obj()
112 metaslab_class_get_dspace(spa_normal_class(spa)) / 1000; in spa_history_create_obj()
123 spa_history_advance_bof(spa_t *spa, spa_history_phys_t *shpp) in spa_history_advance_bof() argument
125 objset_t *mos = spa->spa_meta_objset; in spa_history_advance_bof()
133 if ((err = dmu_read(mos, spa->spa_history, phys_bof, firstread, in spa_history_advance_bof()
[all …]
H A Dvdev.c152 vdev_lookup_top(spa_t *spa, uint64_t vdev) in vdev_lookup_top() argument
154 vdev_t *rvd = spa->spa_root_vdev; in vdev_lookup_top()
156 ASSERT(spa_config_held(spa, SCL_ALL, RW_READER) != 0); in vdev_lookup_top()
197 vdev_count_leaves(spa_t *spa) in vdev_count_leaves() argument
199 return (vdev_count_leaves_impl(spa->spa_root_vdev)); in vdev_count_leaves()
208 spa_t *spa = cvd->vdev_spa; in vdev_add_child() local
210 ASSERT(spa_config_held(spa, SCL_ALL, RW_WRITER) == SCL_ALL); in vdev_add_child()
311 vdev_alloc_common(spa_t *spa, uint_t id, uint64_t guid, vdev_ops_t *ops) in vdev_alloc_common() argument
317 if (spa->spa_root_vdev == NULL) { in vdev_alloc_common()
319 spa->spa_root_vdev = vd; in vdev_alloc_common()
[all …]
H A Dzio_checksum.c176 zio_checksum_dedup_select(spa_t *spa, enum zio_checksum child, in zio_checksum_dedup_select() argument
187 return (spa_dedup_checksum(spa)); in zio_checksum_dedup_select()
190 return (spa_dedup_checksum(spa) | ZIO_CHECKSUM_VERIFY); in zio_checksum_dedup_select()
230 zio_checksum_template_init(enum zio_checksum checksum, spa_t *spa) in zio_checksum_template_init() argument
236 if (spa->spa_cksum_tmpls[checksum] != NULL) in zio_checksum_template_init()
240 mutex_enter(&spa->spa_cksum_tmpls_lock); in zio_checksum_template_init()
241 if (spa->spa_cksum_tmpls[checksum] == NULL) { in zio_checksum_template_init()
242 spa->spa_cksum_tmpls[checksum] = in zio_checksum_template_init()
243 ci->ci_tmpl_init(&spa->spa_cksum_salt); in zio_checksum_template_init()
244 VERIFY(spa->spa_cksum_tmpls[checksum] != NULL); in zio_checksum_template_init()
[all …]
H A Dvdev_queue.c276 spa_t *spa = zio->io_spa; in vdev_queue_io_add() local
281 mutex_enter(&spa->spa_iokstat_lock); in vdev_queue_io_add()
282 spa->spa_queue_stats[zio->io_priority].spa_queued++; in vdev_queue_io_add()
283 if (spa->spa_iokstat != NULL) in vdev_queue_io_add()
284 kstat_waitq_enter(spa->spa_iokstat->ks_data); in vdev_queue_io_add()
285 mutex_exit(&spa->spa_iokstat_lock); in vdev_queue_io_add()
291 spa_t *spa = zio->io_spa; in vdev_queue_io_remove() local
296 mutex_enter(&spa->spa_iokstat_lock); in vdev_queue_io_remove()
297 ASSERT3U(spa->spa_queue_stats[zio->io_priority].spa_queued, >, 0); in vdev_queue_io_remove()
298 spa->spa_queue_stats[zio->io_priority].spa_queued--; in vdev_queue_io_remove()
[all …]
H A Dvdev_label.c215 vdev_config_generate(spa_t *spa, vdev_t *vd, boolean_t getstats, in vdev_config_generate() argument
250 spa_version(spa) >= SPA_VERSION_RAIDZ2) || in vdev_config_generate()
252 spa_version(spa) >= SPA_VERSION_RAIDZ3)); in vdev_config_generate()
309 if (spa_scan_get_stats(spa, &ps) == 0) { in vdev_config_generate()
337 child[idx++] = vdev_config_generate(spa, cvd, in vdev_config_generate()
399 vdev_top_config_generate(spa_t *spa, nvlist_t *config) in vdev_top_config_generate() argument
401 vdev_t *rvd = spa->spa_root_vdev; in vdev_top_config_generate()
436 spa_t *spa = vd->vdev_spa; in vdev_label_read_config() local
445 ASSERT(spa_config_held(spa, SCL_STATE_ALL, RW_WRITER) == SCL_STATE_ALL); in vdev_label_read_config()
456 zio = zio_root(spa, NULL, NULL, flags); in vdev_label_read_config()
[all …]
H A Dzfs_fm.c107 const char *subclass, spa_t *spa, vdev_t *vd, zio_t *zio, in zfs_ereport_start() argument
119 if (spa_load_state(spa) == SPA_LOAD_TRYIMPORT || in zfs_ereport_start()
120 spa_load_state(spa) == SPA_LOAD_RECOVER) in zfs_ereport_start()
128 if (spa_load_state(spa) != SPA_LOAD_NONE && in zfs_ereport_start()
129 spa->spa_last_open_failed) in zfs_ereport_start()
202 mutex_enter(&spa->spa_errlist_lock); in zfs_ereport_start()
209 if (spa_load_state(spa) != SPA_LOAD_NONE) { in zfs_ereport_start()
210 if (spa->spa_ena == 0) in zfs_ereport_start()
211 spa->spa_ena = fm_ena_generate(0, FM_ENA_FMT1); in zfs_ereport_start()
212 ena = spa->spa_ena; in zfs_ereport_start()
[all …]
H A Dddt.c59 spa_t *spa = ddt->ddt_spa; in ddt_object_create() local
75 VERIFY(zap_add(os, spa->spa_ddt_stat_object, name, in ddt_object_create()
84 spa_t *spa = ddt->ddt_spa; in ddt_object_destroy() local
95 VERIFY(zap_remove(os, spa->spa_ddt_stat_object, name, tx) == 0); in ddt_object_destroy()
354 spa_t *spa = ddt->ddt_spa; in ddt_stat_generate() local
370 dsize += dva_get_dsize_sync(spa, &ddp->ddp_dva[d]); in ddt_stat_generate()
444 ddt_get_dedup_object_stats(spa_t *spa, ddt_object_t *ddo_total) in ddt_get_dedup_object_stats() argument
448 ddt_t *ddt = spa->spa_ddt[c]; in ddt_get_dedup_object_stats()
469 ddt_get_dedup_histogram(spa_t *spa, ddt_histogram_t *ddh) in ddt_get_dedup_histogram() argument
472 ddt_t *ddt = spa->spa_ddt[c]; in ddt_get_dedup_histogram()
[all …]
H A Dzio.c499 zio_create(zio_t *pio, spa_t *spa, uint64_t txg, const blkptr_t *bp, in zio_create() argument
511 ASSERT(!vd || spa_config_held(spa, SCL_STATE_ALL, RW_READER)); in zio_create()
548 zio->io_spa = spa; in zio_create()
590 zio_null(zio_t *pio, spa_t *spa, vdev_t *vd, zio_done_func_t *done, in zio_null() argument
595 zio = zio_create(pio, spa, 0, NULL, NULL, 0, done, private, in zio_null()
603 zio_root(spa_t *spa, zio_done_func_t *done, void *private, enum zio_flag flags) in zio_root() argument
605 return (zio_null(NULL, spa, NULL, done, private, flags)); in zio_root()
609 zfs_blkptr_verify(spa_t *spa, const blkptr_t *bp) in zfs_blkptr_verify() argument
651 if (vdevid >= spa->spa_root_vdev->vdev_children) { in zfs_blkptr_verify()
657 vdev_t *vd = spa->spa_root_vdev->vdev_child[vdevid]; in zfs_blkptr_verify()
[all …]
H A Ddsl_scan.c99 spa_t *spa = dp->dp_spa; in dsl_scan_init() local
158 spa_scan_stat_init(spa); in dsl_scan_init()
190 spa_t *spa = dp->dp_spa; in dsl_scan_setup_sync() local
202 scn->scn_phys.scn_to_examine = spa->spa_root_vdev->vdev_stat.vs_alloc; in dsl_scan_setup_sync()
205 spa_scan_stat_init(spa); in dsl_scan_setup_sync()
211 vdev_config_dirty(spa->spa_root_vdev); in dsl_scan_setup_sync()
213 if (vdev_resilver_needed(spa->spa_root_vdev, in dsl_scan_setup_sync()
215 spa_event_notify(spa, NULL, ESC_ZFS_RESILVER_START); in dsl_scan_setup_sync()
217 spa_event_notify(spa, NULL, ESC_ZFS_SCRUB_START); in dsl_scan_setup_sync()
220 spa->spa_scrub_started = B_TRUE; in dsl_scan_setup_sync()
[all …]
H A Dzfs_ioctl.c250 static int zfs_prop_activate_feature(spa_t *spa, spa_feature_t feature);
337 spa_t *spa; in zfs_earlier_version() local
339 if (spa_open(name, &spa, FTAG) == 0) { in zfs_earlier_version()
340 if (spa_version(spa) < version) { in zfs_earlier_version()
341 spa_close(spa, FTAG); in zfs_earlier_version()
344 spa_close(spa, FTAG); in zfs_earlier_version()
376 spa_t *spa; in zfs_log_history() local
382 if (spa_open(zc->zc_name, &spa, FTAG) == 0) { in zfs_log_history()
383 if (spa_version(spa) >= SPA_VERSION_ZPOOL_HISTORY) in zfs_log_history()
384 (void) spa_history_log(spa, buf); in zfs_log_history()
[all …]
H A Dmetaslab.c190 metaslab_class_create(spa_t *spa, metaslab_ops_t *ops) in metaslab_class_create() argument
196 mc->mc_spa = spa; in metaslab_class_create()
753 spa_t *spa = vd->vdev_spa; in metaslab_group_allocatable() local
770 mc != spa_normal_class(spa) || mc->mc_alloc_groups == 0); in metaslab_group_allocatable()
1371 spa_t *spa = msp->ms_group->mg_vd->vdev_spa; in metaslab_fragmentation() local
1374 boolean_t feature_enabled = spa_feature_is_enabled(spa, in metaslab_fragmentation()
1392 uint64_t txg = spa_syncing_txg(spa); in metaslab_fragmentation()
1395 if (spa_writeable(spa)) { in metaslab_fragmentation()
1398 spa_dbgmsg(spa, "txg %llu, requesting force condense: " in metaslab_fragmentation()
1548 spa_t *spa = msp->ms_group->mg_vd->vdev_spa; in metaslab_preload() local
[all …]
/titanic_50/usr/src/uts/common/fs/zfs/sys/
H A Dspa.h48 typedef struct spa spa_t;
624 extern void spa_async_request(spa_t *spa, int flag);
625 extern void spa_async_unrequest(spa_t *spa, int flag);
626 extern void spa_async_suspend(spa_t *spa);
627 extern void spa_async_resume(spa_t *spa);
629 extern void spa_inject_delref(spa_t *spa);
630 extern void spa_scan_stat_init(spa_t *spa);
631 extern int spa_scan_get_stats(spa_t *spa, pool_scan_stat_t *ps);
650 extern int spa_vdev_add(spa_t *spa, nvlist_t *nvroot);
651 extern int spa_vdev_attach(spa_t *spa, uint64_t guid, nvlist_t *nvroot,
[all …]
H A Dzfeature.h41 struct spa;
45 extern void spa_feature_create_zap_objects(struct spa *, struct dmu_tx *);
46 extern void spa_feature_enable(struct spa *, spa_feature_t,
48 extern void spa_feature_incr(struct spa *, spa_feature_t, struct dmu_tx *);
49 extern void spa_feature_decr(struct spa *, spa_feature_t, struct dmu_tx *);
50 extern boolean_t spa_feature_is_enabled(struct spa *, spa_feature_t);
51 extern boolean_t spa_feature_is_active(struct spa *, spa_feature_t);
52 extern boolean_t spa_feature_enabled_txg(spa_t *spa, spa_feature_t fid,
61 extern int feature_get_refcount(struct spa *, zfeature_info_t *, uint64_t *);
62 extern int feature_get_refcount_from_disk(spa_t *spa, zfeature_info_t *feature,
[all …]
H A Dddt.h202 extern void ddt_get_dedup_object_stats(spa_t *spa, ddt_object_t *ddo);
203 extern void ddt_get_dedup_histogram(spa_t *spa, ddt_histogram_t *ddh);
204 extern void ddt_get_dedup_stats(spa_t *spa, ddt_stat_t *dds_total);
206 extern uint64_t ddt_get_dedup_dspace(spa_t *spa);
207 extern uint64_t ddt_get_pool_dedup_ratio(spa_t *spa);
216 extern ddt_t *ddt_select(spa_t *spa, const blkptr_t *bp);
220 extern void ddt_prefetch(spa_t *spa, const blkptr_t *bp);
223 extern boolean_t ddt_class_contains(spa_t *spa, enum ddt_class max_class,
231 extern void ddt_create(spa_t *spa);
232 extern int ddt_load(spa_t *spa);
[all …]
H A Darc.h122 arc_buf_t *arc_buf_alloc(spa_t *spa, int size, void *tag,
124 arc_buf_t *arc_loan_buf(spa_t *spa, int size);
139 int arc_read(zio_t *pio, spa_t *spa, const blkptr_t *bp,
142 zio_t *arc_write(zio_t *pio, spa_t *spa, uint64_t txg,
147 void arc_freed(spa_t *spa, const blkptr_t *bp);
152 void arc_flush(spa_t *spa, boolean_t retry);
163 void l2arc_add_vdev(spa_t *spa, vdev_t *vd, boolean_t rebuild);
170 void l2arc_spa_rebuild_start(spa_t *spa);
H A Dzio.h466 extern zio_t *zio_null(zio_t *pio, spa_t *spa, vdev_t *vd,
469 extern zio_t *zio_root(spa_t *spa,
472 extern zio_t *zio_read(zio_t *pio, spa_t *spa, const blkptr_t *bp, void *data,
476 extern zio_t *zio_write(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
482 extern zio_t *zio_rewrite(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
489 extern void zio_free(spa_t *spa, uint64_t txg, const blkptr_t *bp);
491 extern zio_t *zio_claim(zio_t *pio, spa_t *spa, uint64_t txg,
495 extern zio_t *zio_ioctl(zio_t *pio, spa_t *spa, vdev_t *vd, int cmd,
508 extern zio_t *zio_free_sync(zio_t *pio, spa_t *spa, uint64_t txg,
511 extern int zio_alloc_zil(spa_t *spa, uint64_t txg, blkptr_t *new_bp,
[all …]
H A Dvdev.h61 extern vdev_t *vdev_lookup_top(spa_t *spa, uint64_t vdev);
63 extern int vdev_count_leaves(spa_t *spa);
99 extern int vdev_fault(spa_t *spa, uint64_t guid, vdev_aux_t aux);
100 extern int vdev_degrade(spa_t *spa, uint64_t guid, vdev_aux_t aux);
101 extern int vdev_online(spa_t *spa, uint64_t guid, uint64_t flags,
103 extern int vdev_offline(spa_t *spa, uint64_t guid, uint64_t flags);
104 extern void vdev_clear(spa_t *spa, vdev_t *vd);
136 extern void vdev_top_config_generate(spa_t *spa, nvlist_t *config);
137 extern nvlist_t *vdev_config_generate(spa_t *spa, vdev_t *vd,
/titanic_50/usr/src/cmd/zhack/
H A Dzhack.c87 fatal(spa_t *spa, void *tag, const char *fmt, ...) in fatal() argument
91 if (spa != NULL) { in fatal()
92 spa_close(spa, tag); in fatal()
130 spa_t *spa; in import_pool() local
148 if (readonly && spa_open(target, &spa, FTAG) == 0) { in import_pool()
149 spa_close(spa, FTAG); in import_pool()
165 spa_open(target, &spa, FTAG) == 0) { in import_pool()
166 fatal(spa, FTAG, "cannot import '%s': pool is " in import_pool()
199 zhack_spa_open(const char *target, boolean_t readonly, void *tag, spa_t **spa) in zhack_spa_open() argument
206 err = spa_open(target, spa, tag); in zhack_spa_open()
[all …]
/titanic_50/usr/src/cmd/ztest/
H A Dztest.c997 ztest_random_vdev_top(spa_t *spa, boolean_t log_ok) in ztest_random_vdev_top() argument
1000 vdev_t *rvd = spa->spa_root_vdev; in ztest_random_vdev_top()
1003 ASSERT(spa_config_held(spa, SCL_ALL, RW_READER) != 0); in ztest_random_vdev_top()
1059 spa_t *spa = ztest_spa; in ztest_spa_prop_set_uint64() local
1066 error = spa_prop_set(spa, props); in ztest_spa_prop_set_uint64()
2350 spa_t *spa; in ztest_spa_create_destroy() local
2377 VERIFY3U(0, ==, spa_open(zo->zo_pool, &spa, FTAG)); in ztest_spa_create_destroy()
2379 spa_close(spa, FTAG); in ztest_spa_create_destroy()
2388 spa_t *spa; in ztest_spa_upgrade() local
2437 VERIFY0(spa_open(name, &spa, FTAG)); in ztest_spa_upgrade()
[all …]
/titanic_50/usr/src/cmd/zdb/
H A Dzdb.c653 verify_spacemap_refcounts(spa_t *spa) in verify_spacemap_refcounts() argument
658 (void) feature_get_refcount(spa, in verify_spacemap_refcounts()
661 actual_refcount = get_dtl_refcount(spa->spa_root_vdev); in verify_spacemap_refcounts()
662 actual_refcount += get_metaslab_refcount(spa->spa_root_vdev); in verify_spacemap_refcounts()
749 spa_t *spa = vd->vdev_spa; in dump_metaslab() local
774 spa_feature_is_active(spa, SPA_FEATURE_SPACEMAP_HISTOGRAM)) { in dump_metaslab()
789 dump_spacemap(spa->spa_meta_objset, msp->ms_sm); in dump_metaslab()
807 dump_metaslab_groups(spa_t *spa) in dump_metaslab_groups() argument
809 vdev_t *rvd = spa->spa_root_vdev; in dump_metaslab_groups()
810 metaslab_class_t *mc = spa_normal_class(spa); in dump_metaslab_groups()
[all …]

123