Go to file
Antonio Russo 81f981cd82 ZTS: avoid piping to special devices
As described in #11445, the kernel interface kernel_{read,write} no
longer act on special devices.  In the ZTS, zfs send and receive are
tested by piping to these devices, leading to spurious failures (for
positive tests) and may mask errors (for negative tests).

Until a more permanent mechanism to address this deficiency is
developed, clean up the output from the ZTS by avoiding directly piping
to or from /dev/null and /dev/zero.

For /dev/zero input, simply use a pipe: `cat </dev/zero |` .

However, for /dev/null output, the shell semantics for pipe failures
means that zfs send error codes will be masked by the successful
`| cat >/dev/null` command execution.  In that case, use a temporary
file under $TEST_BASE_DIR for output in favor.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Attila Fülöp <attila@fueloep.org>
Signed-off-by: Antonio Russo <aerusso@aerusso.net>
Closes #11478
2021-01-23 15:47:06 -08:00
.github CI: add zloop workflow 2020-12-23 14:34:59 -08:00
cmd zpool: Dryrun fails to list some devices 2021-01-08 15:37:56 -08:00
config Autoconf 2.70 compatibility 2021-01-05 10:33:55 -08:00
contrib ZTS: avoid piping to special devices 2021-01-23 15:47:06 -08:00
etc Verify zfs module loaded before starting services 2020-11-30 09:44:08 -08:00
include FreeBSD: minor_t needs to be signed so that -1 is recognized as such 2021-01-23 15:47:06 -08:00
lib zpool: Dryrun fails to list some devices 2021-01-08 15:37:56 -08:00
man Fix trivial typo in zfs-diff.8 2020-12-23 13:09:32 -08:00
module assertion failed in arc_wait_for_eviction() 2021-01-23 15:47:06 -08:00
rpm zfs-kmods: install to /lib/modules instead of /usr/lib/modules 2020-12-23 14:35:47 -08:00
scripts DKMS: Disable weak modules 2020-12-23 14:34:59 -08:00
tests ZTS: avoid piping to special devices 2021-01-23 15:47:06 -08:00
udev Centralize variable substitution 2020-07-14 17:33:44 -07:00
.editorconfig Add an .editorconfig; document git whitespace settings 2020-01-27 13:32:52 -08:00
.gitignore Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
.gitmodules Add zimport.sh compatibility test script 2014-02-21 12:10:31 -08:00
AUTHORS Add zstd support to zfs 2020-08-20 10:30:06 -07:00
autogen.sh Cause autogen.sh to fail if autoreconf fails 2018-07-06 09:27:37 -07:00
CODE_OF_CONDUCT.md Replace ZFS on Linux references with OpenZFS 2020-10-16 13:01:24 -07:00
configure.ac Autoconf 2.70 compatibility 2021-01-05 10:33:55 -08:00
copy-builtin Replace ZFS on Linux references with OpenZFS 2020-10-16 13:01:24 -07:00
COPYRIGHT Fix typos 2020-06-09 21:24:09 -07:00
cppcheck-suppressions.txt Import ZStandard v1.4.5 2020-08-20 10:30:06 -07:00
LICENSE Update build system and packaging 2018-05-29 16:00:33 -07:00
Makefile.am dracut: use /bin/sh instead of bash as the intepreter 2020-11-30 09:44:02 -08:00
META Tag 2.0.1 2021-01-05 14:17:09 -08:00
NEWS Fix NEWS file 2020-08-27 16:07:01 -07:00
NOTICE Update build system and packaging 2018-05-29 16:00:33 -07:00
README.md docs: update README's installation link 2020-10-16 13:00:13 -07:00
TEST Remove CI builder customization from TEST 2020-03-16 10:46:03 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00

img

OpenZFS is an advanced file system and volume manager which was originally developed for Solaris and is now maintained by the OpenZFS community. This repository contains the code for running OpenZFS on Linux and FreeBSD.

codecov coverity

Official Resources

Installation

Full documentation for installing OpenZFS on your favorite operating system can be found at the Getting Started Page.

Contribute & Develop

We have a separate document with contribution guidelines.

We have a Code of Conduct.

Release

OpenZFS 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 Linux kernel versions.
  • Supported FreeBSD versions are 12-STABLE and 13-CURRENT.