Go to file
Matthew Macy da92d5cbb3 Add zfs_file_* interface, remove vnodes
Provide a common zfs_file_* interface which can be implemented on all 
platforms to perform normal file access from either the kernel module
or the libzpool library.

This allows all non-portable vnode_t usage in the common code to be 
replaced by the new portable zfs_file_t.  The associated vnode and
kobj compatibility functions, types, and macros have been removed
from the SPL.  Moving forward, vnodes should only be used in platform
specific code when provided by the native operating system.

Reviewed-by: Sean Eric Fagan <sef@ixsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Igor Kozhukhov <igor@dilos.org>
Reviewed-by: Jorgen Lundman <lundman@lundman.net>
Signed-off-by: Matt Macy <mmacy@FreeBSD.org>
Closes #9556
2019-11-21 09:32:57 -08:00
.github Fix typos 2019-09-02 18:17:39 -07:00
cmd Add zfs_file_* interface, remove vnodes 2019-11-21 09:32:57 -08:00
config Partially revert 5a6ac4c 2019-11-18 13:05:56 -08:00
contrib Skip loading already loaded key 2019-11-08 14:34:07 -08:00
etc Skip loading already loaded key 2019-11-08 14:34:07 -08:00
include Add zfs_file_* interface, remove vnodes 2019-11-21 09:32:57 -08:00
lib Add zfs_file_* interface, remove vnodes 2019-11-21 09:32:57 -08:00
man Change zed.service to zfs-zed.service in man page 2019-11-13 10:23:23 -08:00
module Add zfs_file_* interface, remove vnodes 2019-11-21 09:32:57 -08:00
rpm Canonicalize Python shebangs 2019-09-12 13:32:32 -07:00
scripts Move platform independent tests to a shared runfile 2019-10-09 10:39:26 -07:00
tests ZTS: tst.terminate_by_signal increase test threshold 2019-11-20 17:26:32 -08:00
udev Restore :: in Makefile.am 2019-08-26 11:48:31 -07:00
.gitignore Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
.gitmodules Add zimport.sh compatibility test script 2014-02-21 12:10:31 -08:00
.travis.yml Add .travis.yml 2017-11-13 09:18:18 -08:00
AUTHORS Update build system and packaging 2018-05-29 16:00:33 -07:00
autogen.sh Cause autogen.sh to fail if autoreconf fails 2018-07-06 09:27:37 -07:00
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md 2019-04-30 10:58:45 -07:00
configure.ac Add tracepoints for taskq entry lifetime events 2019-11-01 13:14:54 -07:00
copy-builtin copy-builtin: SPL must be in Kbuild first (again) 2019-09-11 11:09:50 -07:00
COPYRIGHT OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
LICENSE Update build system and packaging 2018-05-29 16:00:33 -07:00
Makefile.am Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
META Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
NEWS Add NEWS file 2018-09-18 12:03:47 -07:00
NOTICE Update build system and packaging 2018-05-29 16:00:33 -07:00
README.md Explicitly state supported Linux versions 2018-05-30 20:11:19 -07:00
TEST Update build system and packaging 2018-05-29 16:00:33 -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 coverity

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.

Release

ZFS on Linux 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 kernel versions.