FreeBSD ZFS
The Zettabyte File System

spa Struct Reference

#include <spa_impl.h>

Collaboration diagram for spa:
Collaboration graph
[legend]

Data Fields

Protected by spa_namespace_lock
char spa_name [MAXNAMELEN]
 pool name
char * spa_comment
 comment
avl_node_t spa_avl
 node in spa_namespace_avl
nvlist_t * spa_config
 last synced config
nvlist_t * spa_config_syncing
 currently syncing config
nvlist_t * spa_config_splitting
 config for splitting
nvlist_t * spa_load_info
 info and errors from load
uint64_t spa_config_txg
 txg of last config change
int spa_sync_pass
 iterate-to-convergence
pool_state_t spa_state
 pool state
int spa_inject_ref
 injection references
uint8_t spa_sync_on
 sync threads are running
spa_load_state_t spa_load_state
 current load operation
uint64_t spa_import_flags
 import specific flags
taskq_t * spa_zio_taskq [ZIO_TYPES][ZIO_TASKQ_TYPES]
dsl_pool_tspa_dsl_pool
boolean_t spa_is_initializing
 true while opening pool
metaslab_class_tspa_normal_class
 normal data class
metaslab_class_tspa_log_class
 intent log data class
uint64_t spa_first_txg
 first txg after spa_open()
uint64_t spa_final_txg
 txg of export/destroy
uint64_t spa_freeze_txg
 freeze pool at this txg
uint64_t spa_load_max_txg
 best initial ub_txg
uint64_t spa_claim_max_txg
 highest claimed birth txg
timespec_t spa_loaded_ts
 1st successful open time
objset_tspa_meta_objset
 copy of dp->dp_meta_objset
txg_list_t spa_vdev_txg_list
 per-txg dirty vdev list
vdev_tspa_root_vdev
 top-level vdev container
uint64_t spa_config_guid
 config pool guid
uint64_t spa_load_guid
 spa_load initialized guid
uint64_t spa_last_synced_guid
 last synced guid
list_t spa_config_dirty_list
 vdevs with dirty config
list_t spa_state_dirty_list
 vdevs with dirty state
spa_aux_vdev_t spa_spares
 hot spares
spa_aux_vdev_t spa_l2cache
 L2ARC cache devices.
nvlist_t * spa_label_features
 Features for reading MOS.
uint64_t spa_config_object
 MOS object for pool config.
uint64_t spa_config_generation
 config generation number
uint64_t spa_syncing_txg
 txg currently syncing
bpobj_t spa_deferred_bpobj
 deferred-free bplist
bplist_t spa_free_bplist [TXG_SIZE]
 bplist of stuff to free
uberblock_t spa_ubsync
 last synced uberblock
uberblock_t spa_uberblock
 current uberblock
boolean_t spa_extreme_rewind
 rewind past deferred frees
uint64_t spa_last_io
 lbolt of last non-scan I/O
kmutex_t spa_scrub_lock
 resilver/scrub lock
uint64_t spa_scrub_inflight
 in-flight scrub I/Os
kcondvar_t spa_scrub_io_cv
 scrub I/O completion
uint8_t spa_scrub_active
 active or suspended?
uint8_t spa_scrub_type
 type of scrub we're doing
uint8_t spa_scrub_finished
 indicator to rotate logs
uint8_t spa_scrub_started
 started since last boot
uint8_t spa_scrub_reopen
 scrub doing vdev_reopen
uint64_t spa_scan_pass_start
 start time per pass/reboot
uint64_t spa_scan_pass_exam
 examined bytes per pass
kmutex_t spa_async_lock
 protect async state
kthread_t * spa_async_thread
 thread doing async task
int spa_async_suspended
 async tasks suspended
kcondvar_t spa_async_cv
 wait for thread_exit()
uint16_t spa_async_tasks
 async task mask
char * spa_root
 alternate root directory
uint64_t spa_ena
 spa-wide ereport ENA
int spa_last_open_failed
 error if last open failed
uint64_t spa_last_ubsync_txg
 "best" uberblock txg
uint64_t spa_last_ubsync_txg_ts
 timestamp from that ub
uint64_t spa_load_txg
 ub txg that loaded
uint64_t spa_load_txg_ts
 timestamp from that ub
uint64_t spa_load_meta_errors
 verify metadata err count
uint64_t spa_load_data_errors
 verify data err count
uint64_t spa_verify_min_txg
 start txg of verify scrub
kmutex_t spa_errlog_lock
 error log lock
uint64_t spa_errlog_last
 last error log object
uint64_t spa_errlog_scrub
 scrub error log object
kmutex_t spa_errlist_lock
 error list/ereport lock
avl_tree_t spa_errlist_last
 last error list
avl_tree_t spa_errlist_scrub
 scrub error list
uint64_t spa_deflate
 should we deflate?
uint64_t spa_history
 history object
kmutex_t spa_history_lock
 history lock
vdev_tspa_pending_vdev
 pending vdev additions
kmutex_t spa_props_lock
 property lock
uint64_t spa_pool_props_object
 object for properties
uint64_t spa_bootfs
 default boot filesystem
uint64_t spa_failmode
 failure mode for the pool
uint64_t spa_delegation
 delegation on/off
list_t spa_config_list
 previous cache file(s)
zio_tspa_async_zio_root
 root of all async I/O
zio_tspa_suspend_zio_root
 root of all suspended I/O
kmutex_t spa_suspend_lock
 protects suspend_zio_root
kcondvar_t spa_suspend_cv
 notification of resume
uint8_t spa_suspended
 pool is suspended
uint8_t spa_claiming
 pool is doing zil_claim()
boolean_t spa_debug
 debug enabled?
boolean_t spa_is_root
 pool is root
int spa_minref
 num refs when first opened
int spa_mode
 FREAD | FWRITE.
spa_log_state_t spa_log_state
 log state
uint64_t spa_autoexpand
 lun expansion on/off
ddt_tspa_ddt [ZIO_CHECKSUM_FUNCTIONS]
 in-core DDTs
uint64_t spa_ddt_stat_object
 DDT statistics.
uint64_t spa_dedup_ditto
 dedup ditto threshold
uint64_t spa_dedup_checksum
 default dedup checksum
uint64_t spa_dspace
 dspace in normal class
kmutex_t spa_vdev_top_lock
 dueling offline/remove
kmutex_t spa_proc_lock
 protects spa_proc*
kcondvar_t spa_proc_cv
 spa_proc_state transitions
spa_proc_state_t spa_proc_state
 see definition
struct proc * spa_proc
 "zpool-poolname" process
uint64_t spa_did
 if procp != p0, did of t1
kthread_t * spa_trim_thread
 thread sending TRIM I/Os
kmutex_t spa_trim_lock
 protects spa_trim_cv
kcondvar_t spa_trim_cv
 used to notify TRIM thread
boolean_t spa_autoreplace
 autoreplace set in open
int spa_vdev_locks
 locks grabbed
uint64_t spa_creation_version
 version at pool creation
uint64_t spa_prev_software_version
 See ub_software_version.
uint64_t spa_feat_for_write_obj
 required to write to pool
uint64_t spa_feat_for_read_obj
 required to read from pool
uint64_t spa_feat_desc_obj
 Feature descriptions.
int64_t spa_ccw_fail_time
 Conf cache write fail time.
spa_config_lock_t spa_config_lock [SCL_LOCKS]
 config changes
refcount_t spa_refcount
 number of opens
boolean_t spa_splitting_newspa
 creating new spa in split

Detailed Description

Definition at line 112 of file spa_impl.h.


Field Documentation

kcondvar_t spa::spa_async_cv

wait for thread_exit()

Definition at line 175 of file spa_impl.h.

protect async state

Definition at line 172 of file spa_impl.h.

async tasks suspended

Definition at line 174 of file spa_impl.h.

async task mask

Definition at line 176 of file spa_impl.h.

thread doing async task

Definition at line 173 of file spa_impl.h.

root of all async I/O

Definition at line 203 of file spa_impl.h.

lun expansion on/off

Definition at line 214 of file spa_impl.h.

autoreplace set in open

Definition at line 229 of file spa_impl.h.

avl_node_t spa::spa_avl

node in spa_namespace_avl

Definition at line 119 of file spa_impl.h.

uint64_t spa::spa_bootfs

default boot filesystem

Definition at line 199 of file spa_impl.h.

Conf cache write fail time.

Definition at line 236 of file spa_impl.h.

highest claimed birth txg

Definition at line 140 of file spa_impl.h.

pool is doing zil_claim()

Definition at line 208 of file spa_impl.h.

comment

Definition at line 118 of file spa_impl.h.

nvlist_t* spa::spa_config

last synced config

Definition at line 120 of file spa_impl.h.

vdevs with dirty config

Definition at line 148 of file spa_impl.h.

config generation number

Definition at line 154 of file spa_impl.h.

config pool guid

Definition at line 145 of file spa_impl.h.

previous cache file(s)

Definition at line 202 of file spa_impl.h.

config changes

Definition at line 243 of file spa_impl.h.

MOS object for pool config.

Definition at line 153 of file spa_impl.h.

config for splitting

Definition at line 122 of file spa_impl.h.

currently syncing config

Definition at line 121 of file spa_impl.h.

txg of last config change

Definition at line 124 of file spa_impl.h.

version at pool creation

Definition at line 231 of file spa_impl.h.

ddt_t* spa::spa_ddt[ZIO_CHECKSUM_FUNCTIONS]

in-core DDTs

Definition at line 215 of file spa_impl.h.

DDT statistics.

Definition at line 216 of file spa_impl.h.

boolean_t spa::spa_debug

debug enabled?

Definition at line 209 of file spa_impl.h.

default dedup checksum

Definition at line 218 of file spa_impl.h.

dedup ditto threshold

Definition at line 217 of file spa_impl.h.

deferred-free bplist

Definition at line 156 of file spa_impl.h.

uint64_t spa::spa_deflate

should we deflate?

Definition at line 193 of file spa_impl.h.

delegation on/off

Definition at line 201 of file spa_impl.h.

uint64_t spa::spa_did

if procp != p0, did of t1

Definition at line 225 of file spa_impl.h.

Definition at line 132 of file spa_impl.h.

uint64_t spa::spa_dspace

dspace in normal class

Definition at line 219 of file spa_impl.h.

uint64_t spa::spa_ena

spa-wide ereport ENA

Definition at line 178 of file spa_impl.h.

last error list

Definition at line 191 of file spa_impl.h.

error list/ereport lock

Definition at line 190 of file spa_impl.h.

scrub error list

Definition at line 192 of file spa_impl.h.

last error log object

Definition at line 188 of file spa_impl.h.

error log lock

Definition at line 187 of file spa_impl.h.

scrub error log object

Definition at line 189 of file spa_impl.h.

rewind past deferred frees

Definition at line 160 of file spa_impl.h.

failure mode for the pool

Definition at line 200 of file spa_impl.h.

Feature descriptions.

Definition at line 235 of file spa_impl.h.

required to read from pool

Definition at line 234 of file spa_impl.h.

required to write to pool

Definition at line 233 of file spa_impl.h.

txg of export/destroy

Definition at line 137 of file spa_impl.h.

first txg after spa_open()

Definition at line 136 of file spa_impl.h.

bplist of stuff to free

Definition at line 157 of file spa_impl.h.

freeze pool at this txg

Definition at line 138 of file spa_impl.h.

uint64_t spa::spa_history

history object

Definition at line 194 of file spa_impl.h.

history lock

Definition at line 195 of file spa_impl.h.

import specific flags

Definition at line 130 of file spa_impl.h.

injection references

Definition at line 127 of file spa_impl.h.

true while opening pool

Definition at line 133 of file spa_impl.h.

boolean_t spa::spa_is_root

pool is root

Definition at line 210 of file spa_impl.h.

L2ARC cache devices.

Definition at line 151 of file spa_impl.h.

Features for reading MOS.

Definition at line 152 of file spa_impl.h.

uint64_t spa::spa_last_io

lbolt of last non-scan I/O

Definition at line 161 of file spa_impl.h.

error if last open failed

Definition at line 179 of file spa_impl.h.

last synced guid

Definition at line 147 of file spa_impl.h.

"best" uberblock txg

Definition at line 180 of file spa_impl.h.

timestamp from that ub

Definition at line 181 of file spa_impl.h.

verify data err count

Definition at line 185 of file spa_impl.h.

spa_load initialized guid

Definition at line 146 of file spa_impl.h.

nvlist_t* spa::spa_load_info

info and errors from load

Definition at line 123 of file spa_impl.h.

best initial ub_txg

Definition at line 139 of file spa_impl.h.

verify metadata err count

Definition at line 184 of file spa_impl.h.

spa_load_state_t spa::spa_load_state

current load operation

Definition at line 129 of file spa_impl.h.

ub txg that loaded

Definition at line 182 of file spa_impl.h.

timestamp from that ub

Definition at line 183 of file spa_impl.h.

timespec_t spa::spa_loaded_ts

1st successful open time

Definition at line 141 of file spa_impl.h.

intent log data class

Definition at line 135 of file spa_impl.h.

log state

Definition at line 213 of file spa_impl.h.

copy of dp->dp_meta_objset

Definition at line 142 of file spa_impl.h.

num refs when first opened

Definition at line 211 of file spa_impl.h.

FREAD | FWRITE.

Definition at line 212 of file spa_impl.h.

char spa::spa_name[MAXNAMELEN]

pool name

Definition at line 117 of file spa_impl.h.

normal data class

Definition at line 134 of file spa_impl.h.

pending vdev additions

Definition at line 196 of file spa_impl.h.

object for properties

Definition at line 198 of file spa_impl.h.

See ub_software_version.

Definition at line 232 of file spa_impl.h.

struct proc* spa::spa_proc

"zpool-poolname" process

Definition at line 224 of file spa_impl.h.

kcondvar_t spa::spa_proc_cv

spa_proc_state transitions

Definition at line 222 of file spa_impl.h.

protects spa_proc*

Definition at line 221 of file spa_impl.h.

see definition

Definition at line 223 of file spa_impl.h.

property lock

Definition at line 197 of file spa_impl.h.

number of opens

Definition at line 244 of file spa_impl.h.

alternate root directory

Definition at line 177 of file spa_impl.h.

top-level vdev container

Definition at line 144 of file spa_impl.h.

examined bytes per pass

Definition at line 171 of file spa_impl.h.

start time per pass/reboot

Definition at line 170 of file spa_impl.h.

active or suspended?

Definition at line 165 of file spa_impl.h.

indicator to rotate logs

Definition at line 167 of file spa_impl.h.

in-flight scrub I/Os

Definition at line 163 of file spa_impl.h.

scrub I/O completion

Definition at line 164 of file spa_impl.h.

resilver/scrub lock

Definition at line 162 of file spa_impl.h.

scrub doing vdev_reopen

Definition at line 169 of file spa_impl.h.

started since last boot

Definition at line 168 of file spa_impl.h.

type of scrub we're doing

Definition at line 166 of file spa_impl.h.

hot spares

Definition at line 150 of file spa_impl.h.

creating new spa in split

Definition at line 246 of file spa_impl.h.

pool_state_t spa::spa_state

pool state

Definition at line 126 of file spa_impl.h.

vdevs with dirty state

Definition at line 149 of file spa_impl.h.

kcondvar_t spa::spa_suspend_cv

notification of resume

Definition at line 206 of file spa_impl.h.

protects suspend_zio_root

Definition at line 205 of file spa_impl.h.

root of all suspended I/O

Definition at line 204 of file spa_impl.h.

pool is suspended

Definition at line 207 of file spa_impl.h.

sync threads are running

Definition at line 128 of file spa_impl.h.

iterate-to-convergence

Definition at line 125 of file spa_impl.h.

txg currently syncing

Definition at line 155 of file spa_impl.h.

kcondvar_t spa::spa_trim_cv

used to notify TRIM thread

Definition at line 228 of file spa_impl.h.

protects spa_trim_cv

Definition at line 227 of file spa_impl.h.

thread sending TRIM I/Os

Definition at line 226 of file spa_impl.h.

current uberblock

Definition at line 159 of file spa_impl.h.

last synced uberblock

Definition at line 158 of file spa_impl.h.

locks grabbed

Definition at line 230 of file spa_impl.h.

dueling offline/remove

Definition at line 220 of file spa_impl.h.

per-txg dirty vdev list

Definition at line 143 of file spa_impl.h.

start txg of verify scrub

Definition at line 186 of file spa_impl.h.

taskq_t* spa::spa_zio_taskq[ZIO_TYPES][ZIO_TASKQ_TYPES]

Definition at line 131 of file spa_impl.h.


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines