Print this page
expandable RAID-Z
*** 62,81 ****
typedef void vdev_close_func_t(vdev_t *vd);
typedef int vdev_probe_func_t(vdev_t *vd);
typedef uint64_t vdev_asize_func_t(vdev_t *vd, uint64_t psize);
typedef int vdev_io_start_func_t(zio_t *zio);
typedef int vdev_io_done_func_t(zio_t *zio);
! typedef void vdev_state_change_func_t(vdev_t *vd, int, int);
typedef struct vdev_ops {
vdev_open_func_t *vdev_op_open;
vdev_close_func_t *vdev_op_close;
vdev_probe_func_t *vdev_op_probe;
vdev_asize_func_t *vdev_op_asize;
vdev_io_start_func_t *vdev_op_io_start;
vdev_io_done_func_t *vdev_op_io_done;
vdev_state_change_func_t *vdev_op_state_change;
char vdev_op_type[16];
boolean_t vdev_op_leaf;
} vdev_ops_t;
/*
--- 62,83 ----
typedef void vdev_close_func_t(vdev_t *vd);
typedef int vdev_probe_func_t(vdev_t *vd);
typedef uint64_t vdev_asize_func_t(vdev_t *vd, uint64_t psize);
typedef int vdev_io_start_func_t(zio_t *zio);
typedef int vdev_io_done_func_t(zio_t *zio);
! typedef void vdev_state_change_func_t(vdev_t *vd, int fauled, int degraded);
! typedef uint8_t vdev_grid_func_t(vdev_t *vd);
typedef struct vdev_ops {
vdev_open_func_t *vdev_op_open;
vdev_close_func_t *vdev_op_close;
vdev_probe_func_t *vdev_op_probe;
vdev_asize_func_t *vdev_op_asize;
vdev_io_start_func_t *vdev_op_io_start;
vdev_io_done_func_t *vdev_op_io_done;
vdev_state_change_func_t *vdev_op_state_change;
+ vdev_grid_func_t *vdev_op_grid;
char vdev_op_type[16];
boolean_t vdev_op_leaf;
} vdev_ops_t;
/*