OpenZFS on Linux and FreeBSD
Go to file
Brian Behlendorf 5915791096 Move iput() after zfs_inode_update()
When replaying an unlink/remove operation via zfs_rmdir() the object
being removed will be instantiated by a call to zfs_dirent_lock().
This means that there is a single reference protecting the object.
Right before the call to zfs_inode_update() this reference is dropped
which may cause the object to be destroyed.  This will result in a
NULL dereference as shown by the stack trace is issue #782.

This likely isn't an issue during normal operation because there is
always an additional reference held on the object by the VFS.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #782
2012-09-12 14:22:52 -07:00
cmd Illumos #3064: usr/src/cmd/zpool/zpool_main.c misspells "successful" 2012-09-11 10:19:50 -07:00
config Revert "Improve AF hard disk detection" 2012-09-11 16:33:49 -07:00
dracut Remove autotools products 2012-08-27 11:47:44 -07:00
etc Remove autotools products 2012-08-27 11:47:44 -07:00
include Revert "Improve AF hard disk detection" 2012-09-11 16:33:49 -07:00
lib Avoid running exportfs on each zfs/zpool command invocation 2012-09-11 10:21:49 -07:00
man Add zstreamdump(8) command to examine ZFS send streams. 2012-09-02 14:54:27 -07:00
module Move iput() after zfs_inode_update() 2012-09-12 14:22:52 -07:00
patches Adding grub2 mkconfig support patch 2012-07-30 16:17:23 -07:00
scripts Remove autotools products 2012-08-27 11:47:44 -07:00
udev Remove autotools products 2012-08-27 11:47:44 -07:00
.gitignore Remove autotools products 2012-09-11 10:15:13 -07:00
AUTHORS Add "ashift" property to zpool create 2011-06-17 16:35:49 -07:00
COPYING Relocate COPYING+COPYRIGHT, remove README cruft 2008-12-01 15:34:53 -08:00
COPYRIGHT Update COPYRIGHT to reference zpios CDDL exceptions. 2010-05-18 14:25:28 -07:00
ChangeLog Add build system 2010-08-31 13:41:27 -07:00
DISCLAIMER Update COPYRIGHT and DISCLAIMER. 2010-05-18 10:32:23 -07:00
META ZFS 0.6.0-rc10 2012-08-14 08:38:19 -07:00
Makefile.am Add copy-builtin to EXTRA_DIST 2012-08-23 09:50:00 -07:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
PKGBUILD-zfs-modules.in Add make rule for building Arch Linux packages 2011-12-14 19:14:23 -08:00
PKGBUILD-zfs.in Add make rule for building Arch Linux packages 2011-12-14 19:14:23 -08:00
README.markdown Add script for builtin module building. 2012-07-26 13:45:09 -07:00
ZFS.RELEASE Update to onnv_147 2010-08-26 14:24:34 -07:00
autogen.sh Remove autotools products 2012-08-27 11:47:44 -07:00
configure.ac Add zstreamdump(8) command to examine ZFS send streams. 2012-09-02 14:54:27 -07:00
copy-builtin Consistent menuconfig name 2012-08-26 13:49:37 -07:00
dkms.conf.in Support building a zfs-modules-dkms sub package 2012-08-08 15:21:01 -07:00
dkms.postinst Support building a zfs-modules-dkms sub package 2012-08-08 15:21:01 -07:00
zfs-modules.spec.in Cleanly remove zfs-modules-devel headers 2012-08-13 16:35:26 -07:00
zfs-script-config.sh.in Unconditionally load core kernel modules 2010-11-11 11:38:25 -08:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00
zfs.spec.in Fix man page installation path 2012-08-10 15:32:30 -07:00

README.markdown

Native ZFS for Linux! ZFS is an advanced file system and volume manager which was originally developed for Solaris. It has been successfully ported to FreeBSD and now there is a functional Linux ZFS kernel port too. The port currently includes a fully functional and stable SPA, DMU, and ZVOL with a ZFS Posix Layer (ZPL) on the way!

$ ./configure
$ make pkg

To copy the kernel code inside your kernel source tree for builtin compilation:

$ ./configure --enable-linux-builtin --with-linux=/usr/src/linux-...
$ ./copy-builtin /usr/src/linux-...

Full documentation for building, configuring, and using ZFS can be found at: http://zfsonlinux.org