Go to file
Brian Behlendorf 1efdc45ea8 Fix O_APPEND open(2) flag
As described in flags section of open(2):

  O_APPEND:
    The  file  is  opened in append mode.  Before each write(2), the
    file offset is positioned at the end of the  file,  as  if  with
    lseek(2).   O_APPEND may lead to corrupted files on NFS filesys-
    tems if more than one process appends data to a  file  at  once.
    This is because NFS does not support appending to a file, so the
    client kernel has to simulate it, which can't be done without  a
    race condition.

This issue was originally overlooked because normally the generic
VFS code handles this for a filesystem.  However, because ZFS explictly
registers a zpl_write() function it's responsible for the seek.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #3124
2015-02-24 11:21:54 -08:00
cmd Enhancements to zpool dry run mode. 2015-02-11 14:05:17 -08:00
config Linux 3.19 compat: file_inode was added 2015-02-10 11:24:51 -08:00
contrib Add bash completions by Aneurin Price. 2014-08-06 15:03:28 -07:00
dracut Fix error in dracut script if not using ZFS root 2015-02-17 16:15:16 -08:00
etc Improve systemd script to not leave stale sharetab 2014-12-18 09:54:56 -08:00
include Linux 3.19 compat: file_inode was added 2015-02-10 11:24:51 -08:00
lib Change VERIFY to ASSERT in mutex_destroy() 2015-02-11 13:58:40 -08:00
man Retire zio_bulk_flags 2015-02-10 16:08:49 -08:00
module Fix O_APPEND open(2) flag 2015-02-24 11:21:54 -08:00
rpm Fix typo in %post scriptlet lines 2014-12-18 18:38:33 -08:00
scripts Set zfs_autoimport_disable default value to 1 2015-02-17 16:09:41 -08: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 Kernel header installation should respect --prefix 2014-10-28 09:37:06 -07:00
META Make license compatibility checks consistent 2014-10-17 14:58: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