Go to file
Brian Behlendorf a72ae9bf3d ZED: Do not offline a missing device if no spare is available
Due to commit d48091d a removed device is now explicitly offlined by
the ZED if no spare is available, rather than the letting ZFS detect
it as UNAVAIL. This broke auto-replacing of whole-disk devices, as
described in issue #10577.  In short, when a new device is reinserted
in the same slot, the ZED will try to ONLINE it without letting ZFS
recreate the necessary partition table.

This change simply avoids setting the device OFFLINE when removed if
no spare is available (or if spare_on_remove is false).  This change
has been left minimal to allow it to be backported to 0.8.x release.
The auto_offline_001_pos ZTS test has been updated accordingly.

Some follow up work is planned to update the ZED so it transitions
the vdev to a REMOVED state.  This is a state which has always
existed but there is no current interface the ZED can use to
accomplish this.  Therefore it's being left to a follow up PR.

Reviewed-by: Gionatan Danti <g.danti@assyoma.it>
Co-authored-by: Gionatan Danti <g.danti@assyoma.it>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #10577
Closes #10730
2020-09-16 14:48:22 -07:00
.github Fix typos 2020-01-22 13:49:00 -08:00
cmd ZED: Do not offline a missing device if no spare is available 2020-09-16 14:48:22 -07:00
config Linux 5.9 compat: NR_SLAB_RECLAIMABLE (#10865) 2020-09-15 21:16:58 +00:00
contrib Fix zfs-functions packaging bug 2020-05-12 10:53:32 -07:00
etc Fix zfs-functions packaging bug 2020-05-12 10:53:32 -07:00
include Appease GCC sprintf warnings found on Fedora 32/GCC 10.0.1 2020-09-15 23:43:12 +00:00
lib Appease GCC sprintf warnings found on Fedora 32/GCC 10.0.1 2020-09-15 23:43:12 +00:00
man ICP: Improve AES-GCM performance 2020-05-12 10:53:32 -07:00
module Fix inability to destroy snapshot used over NFS 2020-09-16 14:30:51 -07:00
rpm lib/libzfs, rpm: Install pkgconfig files in the correct directory (#10628) 2020-09-15 21:16:58 +00:00
scripts Fix typos 2020-01-22 13:49:00 -08:00
tests ZED: Do not offline a missing device if no spare is available 2020-09-16 14:48:22 -07:00
udev Restore :: in Makefile.am 2020-05-12 10:53:32 -07:00
.gitignore Adapt gitignore for modules 2020-01-22 13:49:05 -08:00
.gitmodules Add zimport.sh compatibility test script 2014-02-21 12:10:31 -08:00
.travis.yml Add .travis.yml 2017-11-13 09:18:18 -08:00
AUTHORS Linux 5.9 compat: add linux/blkdev.h include 2020-09-15 21:16:58 +00:00
autogen.sh Cause autogen.sh to fail if autoreconf fails 2018-07-06 09:27:37 -07:00
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md 2019-04-30 10:58:45 -07:00
configure.ac Fix zfs-functions packaging bug 2020-05-12 10:53:32 -07:00
copy-builtin Allow copy-builtin to work with modified sources 2018-10-17 12:06:05 -07:00
COPYRIGHT ICP: Improve AES-GCM performance 2020-05-12 10:53:32 -07:00
LICENSE Update build system and packaging 2018-05-29 16:00:33 -07:00
Makefile.am Perform KABI checks in parallel 2020-01-22 13:49:01 -08:00
META Tag zfs-0.8.4 2020-05-12 10:53:32 -07:00
NEWS Add NEWS file 2018-09-18 12:03:47 -07:00
NOTICE Update build system and packaging 2018-05-29 16:00:33 -07:00
README.md Explicitly state supported Linux versions 2018-05-30 20:11:19 -07:00
TEST Update build system and packaging 2018-05-29 16:00:33 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00

img

ZFS on Linux is an advanced file system and volume manager which was originally developed for Solaris and is now maintained by the OpenZFS community.

codecov coverity

Official Resources

Installation

Full documentation for installing ZoL on your favorite Linux distribution can be found at our site.

Contribute & Develop

We have a separate document with contribution guidelines.

Release

ZFS on Linux is released under a CDDL license.
For more details see the NOTICE, LICENSE and COPYRIGHT files; UCRL-CODE-235197

Supported Kernels

  • The META file contains the officially recognized supported kernel versions.