Go to file
Tim Chase cb08f06307 Perform whole-page page truncation for hole-punching under a range lock
As an attempt to perform the page truncation more optimally, the
hole-punching support added in 223df0161f
truncated performed the operation in two steps: first, sub-page "stubs"
were zeroed under the range lock in zfs_free_range() using the new
zfs_zero_partial_page() function and then the whole pages were truncated
within zfs_freesp().  This left a window of opportunity during which
the full pages could be touched.

This patch closes the window by moving the whole-page truncation into
zfs_free_range() under the range lock.

Signed-off-by: Tim Chase <tim@chase2k.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #2733
2014-09-29 09:22:03 -07:00
cmd Refer to ZED's scripts as ZEDLETs 2014-09-25 13:54:17 -07:00
config Retire HAVE_IOCTL_* configure checks 2014-08-28 07:45:54 -07:00
contrib Add bash completions by Aneurin Price. 2014-08-06 15:03:28 -07:00
dracut Correct autodetection of bootfs property 2014-08-13 16:53:06 -07:00
etc Import zfs pools after cryptsetup 2014-09-04 09:50:45 -07:00
include Illumos 4753 - increase number of outstanding async writes when sync task is waiting 2014-09-23 13:50:55 -07:00
lib Illumos 5116 - zpool history -i goes into infinite loop 2014-09-23 11:58:05 -07:00
man Refer to ZED's scripts as ZEDLETs 2014-09-25 13:54:17 -07:00
module Perform whole-page page truncation for hole-punching under a range lock 2014-09-29 09:22:03 -07:00
rpm Add a pkgconfig file 2014-08-28 07:59:43 -07:00
scripts zpool-create.sh: allow features to be disabled 2014-07-25 11:58:31 -07:00
udev Open pools asynchronously after module load 2013-07-03 09:24:38 -07:00
.gitignore Ignore *.{deb,rpm,tar.gz} files in the top directory. 2013-04-24 16:18:59 -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 Add a pkgconfig file 2014-08-28 07:59:43 -07:00
copy-builtin Consistent menuconfig name 2012-08-26 13:49:37 -07:00
COPYRIGHT Refresh links to web site 2013-03-06 15:46:41 -08:00
DISCLAIMER Fix minor typos and update marketing copy. 2013-03-21 12:51:06 -07:00
Makefile.am Add bash completions by Aneurin Price. 2014-08-06 15:03:28 -07:00
META Tag zfs-0.6.3 2014-06-12 13:34:38 -07:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
README.markdown Fix minor typos and update marketing copy. 2013-03-21 12:51:06 -07:00
zfs-script-config.sh.in Initial implementation of zed (ZFS Event Daemon) 2014-04-02 13:10:03 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00

Native ZFS for Linux!

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

ZFS on Linux, which is also known as ZoL, is currently feature complete. It includes fully functional and stable SPA, DMU, ZVOL, and ZPL layers.

Full documentation for installing ZoL on your favorite Linux distribution can be found at: http://zfsonlinux.org