FreeBSD ZFS
The Zettabyte File System
Functions | Variables

vdev_missing.c File Reference

Routines for handling the special "missing" vdev. More...

#include <sys/zfs_context.h>
#include <sys/spa.h>
#include <sys/vdev_impl.h>
#include <sys/fs/zfs.h>
#include <sys/zio.h>
Include dependency graph for vdev_missing.c:

Go to the source code of this file.

Functions

static int vdev_missing_open (vdev_t *vd, uint64_t *psize, uint64_t *max_psize, uint64_t *ashift)
static void vdev_missing_close (vdev_t *vd)
static int vdev_missing_io_start (zio_t *zio)
static void vdev_missing_io_done (zio_t *zio)

Variables

vdev_ops_t vdev_missing_ops
vdev_ops_t vdev_hole_ops

Detailed Description

Routines for handling the special "missing" vdev.

The 'missing' vdev is a special vdev type used only during import. It signifies a placeholder in the root vdev for some vdev that we know is missing. We pass it down to the kernel to allow the rest of the configuration to parsed and an attempt made to open all available devices. Because its GUID is always 0, we know that the guid sum will mismatch and we won't be able to open the pool anyway.

Definition in file vdev_missing.c.


Function Documentation

static void vdev_missing_close ( vdev_t vd) [static]

Definition at line 67 of file vdev_missing.c.

static void vdev_missing_io_done ( zio_t zio) [static]

Definition at line 81 of file vdev_missing.c.

static int vdev_missing_io_start ( zio_t zio) [static]

Definition at line 73 of file vdev_missing.c.

static int vdev_missing_open ( vdev_t vd,
uint64_t *  psize,
uint64_t *  max_psize,
uint64_t *  ashift 
) [static]

Definition at line 50 of file vdev_missing.c.


Variable Documentation

Initial value:

Definition at line 98 of file vdev_missing.c.

Initial value:

Definition at line 85 of file vdev_missing.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines