FreeBSD ZFS
The Zettabyte File System
Data Structures | Typedefs | Enumerations | Variables

sys/spa_impl.h File Reference

#include <sys/spa.h>
#include <sys/vdev.h>
#include <sys/metaslab.h>
#include <sys/dmu.h>
#include <sys/dsl_pool.h>
#include <sys/uberblock_impl.h>
#include <sys/zfs_context.h>
#include <sys/avl.h>
#include <sys/refcount.h>
#include <sys/bplist.h>
#include <sys/bpobj.h>
Include dependency graph for spa_impl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  spa_error_entry
struct  spa_history_phys
struct  spa_aux_vdev
struct  spa_config_lock
struct  spa_config_dirent
struct  spa

Typedefs

typedef struct spa_error_entry spa_error_entry_t
typedef struct spa_history_phys spa_history_phys_t
typedef struct spa_config_lock spa_config_lock_t
typedef struct spa_config_dirent spa_config_dirent_t
typedef enum spa_proc_state spa_proc_state_t
 State machine for the zpool-pooname process.

Enumerations

enum  zio_taskq_type {
  ZIO_TASKQ_ISSUE = 0, ZIO_TASKQ_ISSUE_HIGH, ZIO_TASKQ_INTERRUPT, ZIO_TASKQ_INTERRUPT_HIGH,
  ZIO_TASKQ_TYPES
}
enum  spa_proc_state {
  SPA_PROC_NONE, SPA_PROC_CREATED, SPA_PROC_ACTIVE, SPA_PROC_DEACTIVATE,
  SPA_PROC_GONE
}
 

State machine for the zpool-pooname process.

More...

Variables

const char * spa_config_path
 This can be overridden in userland to preserve an alternate namespace for userland pools when doing testing.

Typedef Documentation

State machine for the zpool-pooname process.

The states transitions are done as follows:

	From		To			Routine
	PROC_NONE	-> PROC_CREATED		spa_activate()
	PROC_CREATED	-> PROC_ACTIVE		spa_thread()
	PROC_ACTIVE	-> PROC_DEACTIVATE	spa_deactivate()
	PROC_DEACTIVATE	-> PROC_GONE		spa_thread()
	PROC_GONE	-> PROC_NONE		spa_deactivate()
   

Enumeration Type Documentation

State machine for the zpool-pooname process.

The states transitions are done as follows:

	From		To			Routine
	PROC_NONE	-> PROC_CREATED		spa_activate()
	PROC_CREATED	-> PROC_ACTIVE		spa_thread()
	PROC_ACTIVE	-> PROC_DEACTIVATE	spa_deactivate()
	PROC_DEACTIVATE	-> PROC_GONE		spa_thread()
	PROC_GONE	-> PROC_NONE		spa_deactivate()
   
Enumerator:
SPA_PROC_NONE 

spa_proc = &p0, no process created

SPA_PROC_CREATED 

spa_activate() has proc, is waiting

SPA_PROC_ACTIVE 

taskqs created, spa_proc set

SPA_PROC_DEACTIVATE 

spa_deactivate() requests process exit

SPA_PROC_GONE 

spa_thread() is exiting, spa_proc = &p0

Definition at line 104 of file spa_impl.h.

Enumerator:
ZIO_TASKQ_ISSUE 
ZIO_TASKQ_ISSUE_HIGH 
ZIO_TASKQ_INTERRUPT 
ZIO_TASKQ_INTERRUPT_HIGH 
ZIO_TASKQ_TYPES 

Definition at line 83 of file spa_impl.h.


Variable Documentation

const char* spa_config_path

This can be overridden in userland to preserve an alternate namespace for userland pools when doing testing.

Definition at line 69 of file spa_config.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines