It's possible for the following assertion to be tripped when
running ztest:
assertion failed for thread 0xf09fca40, thread-id 549:
spa->spa_max_ashift == spa->spa_min_ashift (0xc == 0x9),
file ../../../uts/common/fs/zfs/vdev_removal.c, line 965
> $c
libc.so.1`_lwp_kill+7(
ebdde6c0,
ebdde6c0, a9,
fee7865e)
libc.so.1`_assfail+0x214(
ebddea28,
fed7ac3c, 3c5,
fef62000)
libc.so.1`assfail3+0xde(
fed7b130, c, 0,
fed812cb, 9, 0)
libzpool.so.1`spa_vdev_copy_impl+0x26b(
89a4b40,
ebddef74,
ebddef68,
8992dc0,
ebe10a00,
fef073c0)
libzpool.so.1`spa_vdev_remove_thread+0x6cd(
87450c0, 0, 0,
fee8f43a)
libc.so.1`_thrp_setup+0x8c(
f09fca40)
libc.so.1`_lwp_start(
f09fca40, 0, 0, 0, 0, 0)
> ::spa -v
ADDR STATE NAME
08723000 ACTIVE ztest
ADDR STATE AUX DESCRIPTION
087466c0 HEALTHY - root
087450c0 HEALTHY - /rpool/tmp/ztest.0a
08745640 HEALTHY - indirect
08745bc0 HEALTHY - /rpool/tmp/ztest.2a
08746140 HEALTHY - /rpool/tmp/ztest.3a
- - - spares
08744b40 HEALTHY - /rpool/tmp/ztest.spares.0
Authored by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Prashanth Sreenivasa <pks@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Ported-by: Tim Chase <tim@chase2k.com>
OpenZFS-issue: https://www.illumos.org/issues/9084
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/
18acba7
Closes #6900
return (error);
}
- if (vd->vdev_top == vd && vd->vdev_ashift != 0 &&
- !vd->vdev_isl2cache && !vd->vdev_islog) {
- if (vd->vdev_ashift > spa->spa_max_ashift)
- spa->spa_max_ashift = vd->vdev_ashift;
- if (vd->vdev_ashift < spa->spa_min_ashift)
- spa->spa_min_ashift = vd->vdev_ashift;
- }
-
/*
* Track the min and max ashift values for normal data devices.
*/