Go to file
Brian Behlendorf 63f3396233 Fix mmap / libaio deadlock
Calling uiomove() in mappedread() under the page lock can result
in a deadlock if the user space page needs to be faulted in.

Resolve the issue by dropping the page lock before the uiomove().
The inode range lock protects against concurrent updates via
zfs_read() and zfs_write().

Reviewed-by: Albert Lee <trisk@forkgnu.org>
Reviewed-by: Chunwei Chen <david.chen@nutanix.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #7335
Closes #7339
2018-05-07 17:19:57 -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 mmap / libaio deadlock 2018-05-07 17:19:57 -07:00
contrib modprobe zfs during dracut mount 2018-05-07 17:19:57 -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 Add support for nvme disk detection 2018-05-07 17:19:56 -07:00
man Add zfs_scan_ignore_errors tunable 2018-05-07 17:19:56 -07:00
module Fix mmap / libaio deadlock 2018-05-07 17:19:57 -07:00
rpm Fix mmap / libaio deadlock 2018-05-07 17:19:57 -07:00
scripts Fix free memory calculation on v3.14+ 2018-03-14 16:10:37 -07:00
tests Fix mmap / libaio deadlock 2018-05-07 17:19:57 -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 Fix mmap / libaio deadlock 2018-05-07 17:19:57 -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.