]> git.proxmox.com Git - mirror_zfs.git/commit - tests/zfs-tests/include/libtest.shlib
More ashift improvements
authorLOLi <loli10K@users.noreply.github.com>
Wed, 3 May 2017 16:31:05 +0000 (18:31 +0200)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 3 May 2017 16:31:05 +0000 (09:31 -0700)
commitdddef7d600580ea35177299fe8394f665cc13387
tree980db4683bb602f8ef7925739517563520d8b357
parent9d3f7b87919b7d0d869153ca72844f565cd0bf52
More ashift improvements

This commit allow higher ashift values (up to 16) in 'zpool create'

The ashift value was previously limited to 13 (8K block) in b41c990
because the limited number of uberblocks we could fit in the
statically sized (128K) vdev label ring buffer could prevent the
ability the safely roll back a pool to recover it.

Since b02fe35 the largest uberblock size we support is 8K: this
allow us to store a minimum number of 16 uberblocks in the vdev
label, even with higher ashift values.

Additionally change 'ashift' pool property behaviour: if set it will
be used as the default hint value in subsequent vdev operations
('zpool add', 'attach' and 'replace'). A custom ashift value can still
be specified from the command line, if desired.

Finally, fix a bug in add-o_ashift.ksh caused by a missing variable.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #2024
Closes #4205
Closes #4740
Closes #5763
20 files changed:
cmd/zpool/zpool_main.c
cmd/zpool/zpool_vdev.c
include/sys/spa.h
lib/libzfs/libzfs_pool.c
man/man8/zpool.8
module/zcommon/zpool_prop.c
tests/runfiles/linux.run
tests/zfs-tests/include/libtest.shlib
tests/zfs-tests/tests/functional/cli_root/zpool_add/Makefile.am
tests/zfs-tests/tests/functional/cli_root/zpool_add/add-o_ashift.ksh
tests/zfs-tests/tests/functional/cli_root/zpool_add/add_prop_ashift.ksh [new file with mode: 0755]
tests/zfs-tests/tests/functional/cli_root/zpool_attach/Makefile.am
tests/zfs-tests/tests/functional/cli_root/zpool_attach/attach-o_ashift.ksh [new file with mode: 0755]
tests/zfs-tests/tests/functional/cli_root/zpool_create/Makefile.am
tests/zfs-tests/tests/functional/cli_root/zpool_create/create-o_ashift.ksh [new file with mode: 0755]
tests/zfs-tests/tests/functional/cli_root/zpool_replace/Makefile.am
tests/zfs-tests/tests/functional/cli_root/zpool_replace/replace-o_ashift.ksh [new file with mode: 0755]
tests/zfs-tests/tests/functional/cli_root/zpool_replace/replace_prop_ashift.ksh [new file with mode: 0755]
tests/zfs-tests/tests/functional/cli_root/zpool_set/Makefile.am
tests/zfs-tests/tests/functional/cli_root/zpool_set/zpool_set_ashift.ksh [new file with mode: 0755]