Go to file
Brian Behlendorf 1258bd778e
Refine split block reconstruction
Due to a flaw in 4589f3ae the number of unique combinations
could be calculated incorrectly.  This could result in the
random combinations reconstruction being used when it would
have been possible to check all combinations.

This change fixes the unique combinations calculation and
simplifies the reconstruction logic by maintaining a per-
segment list of unique copies.

The vdev_indirect_splits_damage() function was introduced
to validate both the enumeration and random reconstruction
logic with ztest.  It is implemented such it will never
make a known recoverable block unrecoverable.

Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Serapheim Dimitropoulos <serapheim@delphix.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #6900 
Closes #7934
2018-10-01 10:36:34 -07:00
.github Add new wiki page to CONTRIBUTING 2018-09-18 08:58:15 -07:00
cmd Refine split block reconstruction 2018-10-01 10:36:34 -07:00
config Fix statfs(2) for 32-bit user space 2018-09-24 17:11:25 -07:00
contrib pyzfs: add missing libzfs_core functions 2018-08-20 10:11:52 -07:00
etc Minor documentation, logging, and testing typos 2018-06-07 09:38:39 -07:00
include Fixes for procfs files backed by linked lists 2018-09-26 11:08:12 -07:00
lib Fixes for procfs files backed by linked lists 2018-09-26 11:08:12 -07:00
man Refine split block reconstruction 2018-10-01 10:36:34 -07:00
module Refine split block reconstruction 2018-10-01 10:36:34 -07:00
rpm Remove %changelog from spec file 2018-08-26 12:59:33 -07:00
scripts Direct IO support 2018-08-27 10:04:21 -07:00
tests Fixes for procfs files backed by linked lists 2018-09-26 11:08:12 -07:00
udev Add kernel module auto-loading 2018-03-13 10:45:55 -07:00
.gitignore Ignore *.o.ur-safe build artifacts 2018-05-13 18:59:02 -07: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 Update build system and packaging 2018-05-29 16:00:33 -07:00
COPYRIGHT Update build system and packaging 2018-05-29 16:00:33 -07:00
LICENSE Update build system and packaging 2018-05-29 16:00:33 -07:00
META Tag 0.8.0-rc1 2018-09-07 09:35:09 -07:00
Makefile.am Add NEWS file 2018-09-18 12:03:47 -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
autogen.sh Cause autogen.sh to fail if autoreconf fails 2018-07-06 09:27:37 -07:00
configure.ac Fixes for procfs files backed by linked lists 2018-09-26 11:08:12 -07:00
copy-builtin copy-builtin: SPL must be in Kbuild first 2018-06-15 15:16:29 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00

README.md

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.