Go to file
Olaf Faaland 3eb3a13628 Report pool suspended due to MMP
When the pool is suspended, record whether it was due to an I/O error or
due to MMP writes failing to succeed within the required time.

Change spa_suspended from uint8_t to zio_suspend_reason_t to store the
reason.

When userspace queries pool status via spa_tryimport(), report the
reason the pool was suspended in a new key,
ZPOOL_CONFIG_SUSPENDED_REASON.

In libzfs, when interpreting the returned config nvlist, report
suspension due to MMP with a new pool status enum value,
ZPOOL_STATUS_IO_FAILURE_MMP.

In status_callback(), which generates and emits the message when 'zpool
status' is executed, add a case to print an appropriate message for the
new pool status enum value.

Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Signed-off-by: Olaf Faaland <faaland1@llnl.gov>
Closes #7296
2018-05-07 17:19:56 -07:00
.github Update codecov.yml 2018-03-14 16:10:36 -07:00
cmd Report pool suspended due to MMP 2018-05-07 17:19:56 -07:00
config Fix zfs-kmod builds when using rpm >= 4.14 2018-03-14 16:10:38 -07:00
contrib Fix some typos 2018-03-14 16:10:38 -07:00
etc Allow modprobe to fail when called within systemd 2018-03-14 16:10:37 -07:00
include Report pool suspended due to MMP 2018-05-07 17:19:56 -07:00
lib Report pool suspended due to MMP 2018-05-07 17:19:56 -07:00
man Add zfs_scan_ignore_errors tunable 2018-05-07 17:19:56 -07:00
module Report pool suspended due to MMP 2018-05-07 17:19:56 -07:00
rpm Tag zfs-0.7.8 2018-04-09 14:31:57 -07:00
scripts Fix free memory calculation on v3.14+ 2018-03-14 16:10:37 -07:00
tests Allow to limit zed's syslog chattiness 2018-05-07 17:19:56 -07:00
udev Fix spelling 2017-01-03 11:31:18 -06:00
.gitignore Add configure option to enable gcov analysis 2018-03-14 16:10:36 -07:00
.gitmodules Add zimport.sh compatibility test script 2014-02-21 12:10:31 -08:00
AUTHORS Add a missing > to AUTHORS 2014-09-02 14:18:53 -07:00
autogen.sh build: do not call boilerplate ourself 2013-04-02 10:55:20 -07:00
configure.ac Take user namespaces into account in policy checks 2018-03-14 16:10:38 -07:00
copy-builtin Allow c99 when building ZFS in the kernel tree 2017-03-27 12:31:15 -07:00
COPYRIGHT Update ZED copyright boilerplate 2015-05-11 15:07:00 -07:00
DISCLAIMER Fix minor typos and update marketing copy. 2013-03-21 12:51:06 -07:00
Makefile.am Add support for "--enable-code-coverage" option 2018-03-14 16:10:36 -07:00
META Tag zfs-0.7.8 2018-04-09 14:31:57 -07:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
README.markdown Update codecov.yml 2018-03-14 16:10:36 -07:00
TEST Retire filebench testing 2017-06-01 06:24:28 -07:00
zfs-script-config.sh.in zpool iostat/status -c improvements 2017-06-05 10:52:15 -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

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.