mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 10:37:35 +03:00
Update core ZFS code from build 121 to build 141.
This commit is contained in:
@@ -19,7 +19,7 @@
|
||||
* CDDL HEADER END
|
||||
*/
|
||||
/*
|
||||
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
|
||||
* Copyright 2010 Sun Microsystems, Inc. All rights reserved.
|
||||
* Use is subject to license terms.
|
||||
*/
|
||||
|
||||
@@ -60,6 +60,11 @@ vdev_mirror_map_free(zio_t *zio)
|
||||
kmem_free(mm, offsetof(mirror_map_t, mm_child[mm->mm_children]));
|
||||
}
|
||||
|
||||
static const zio_vsd_ops_t vdev_mirror_vsd_ops = {
|
||||
vdev_mirror_map_free,
|
||||
zio_vsd_default_cksum_report
|
||||
};
|
||||
|
||||
static mirror_map_t *
|
||||
vdev_mirror_map_alloc(zio_t *zio)
|
||||
{
|
||||
@@ -117,7 +122,7 @@ vdev_mirror_map_alloc(zio_t *zio)
|
||||
}
|
||||
|
||||
zio->io_vsd = mm;
|
||||
zio->io_vsd_free = vdev_mirror_map_free;
|
||||
zio->io_vsd_ops = &vdev_mirror_vsd_ops;
|
||||
return (mm);
|
||||
}
|
||||
|
||||
@@ -209,7 +214,7 @@ vdev_mirror_child_select(zio_t *zio)
|
||||
uint64_t txg = zio->io_txg;
|
||||
int i, c;
|
||||
|
||||
ASSERT(zio->io_bp == NULL || zio->io_bp->blk_birth == txg);
|
||||
ASSERT(zio->io_bp == NULL || BP_PHYSICAL_BIRTH(zio->io_bp) == txg);
|
||||
|
||||
/*
|
||||
* Try to find a child whose DTL doesn't contain the block to read.
|
||||
@@ -447,6 +452,8 @@ vdev_ops_t vdev_mirror_ops = {
|
||||
vdev_mirror_io_start,
|
||||
vdev_mirror_io_done,
|
||||
vdev_mirror_state_change,
|
||||
NULL,
|
||||
NULL,
|
||||
VDEV_TYPE_MIRROR, /* name of this vdev type */
|
||||
B_FALSE /* not a leaf vdev */
|
||||
};
|
||||
@@ -458,6 +465,8 @@ vdev_ops_t vdev_replacing_ops = {
|
||||
vdev_mirror_io_start,
|
||||
vdev_mirror_io_done,
|
||||
vdev_mirror_state_change,
|
||||
NULL,
|
||||
NULL,
|
||||
VDEV_TYPE_REPLACING, /* name of this vdev type */
|
||||
B_FALSE /* not a leaf vdev */
|
||||
};
|
||||
@@ -469,6 +478,8 @@ vdev_ops_t vdev_spare_ops = {
|
||||
vdev_mirror_io_start,
|
||||
vdev_mirror_io_done,
|
||||
vdev_mirror_state_change,
|
||||
NULL,
|
||||
NULL,
|
||||
VDEV_TYPE_SPARE, /* name of this vdev type */
|
||||
B_FALSE /* not a leaf vdev */
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user