OpenZFS on Linux and FreeBSD
Go to file
Eli Schwartz 638edf1d42 Linux 5.8 compat: __vmalloc()
The `pgprot` argument has been removed from `__vmalloc` in Linux 5.8,
being `PAGE_KERNEL` always now [1].

Detect this during configure and define a wrapper for older kernels.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/mm/vmalloc.c?h=next-20200605&id=88dca4ca5a93d2c09e5bbc6a62fbfc3af83c4fca

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Co-authored-by: Sebastian Gottschall <s.gottschall@dd-wrt.com>
Co-authored-by: Michael Niewöhner <foss@mniewoehner.de>
Signed-off-by: Sebastian Gottschall <s.gottschall@dd-wrt.com>
Signed-off-by: Michael Niewöhner <foss@mniewoehner.de>
Closes #10422

(cherry picked from commit 080102a1b6)
- apply to 0.8.4 before certain files were moved around
- config/kernel-kmem.m4 exists in git but not release tarballs because
  it is unused; introduce it in a new file to prevent conflicts
- linux/mm.h is included in git master via sys/kmem.h; do not remove it
  here or the build will error due to undefined is_vmalloc_addr()

Original-patch-by: Michael Niewöhner <c0d3z3r0@users.noreply.github.com>
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
2020-09-15 21:16:58 +00:00
.github Fix typos 2020-01-22 13:49:00 -08:00
cmd Fix gcc 10.1 stringop-truncation error 2020-09-15 21:16:58 +00:00
config Linux 5.8 compat: __vmalloc() 2020-09-15 21:16:58 +00:00
contrib Fix zfs-functions packaging bug 2020-05-12 10:53:32 -07:00
etc Fix zfs-functions packaging bug 2020-05-12 10:53:32 -07:00
include Linux 5.8 compat: __vmalloc() 2020-09-15 21:16:58 +00:00
lib ICP: Improve AES-GCM performance 2020-05-12 10:53:32 -07:00
man ICP: Improve AES-GCM performance 2020-05-12 10:53:32 -07:00
module Linux 5.8 compat: __vmalloc() 2020-09-15 21:16:58 +00:00
rpm RPM: Remove old versions of DKMS on upgrade 2020-09-15 21:16:58 +00:00
scripts Fix typos 2020-01-22 13:49:00 -08:00
tests ICP: Improve AES-GCM performance 2020-05-12 10:53:32 -07:00
udev Restore :: in Makefile.am 2020-05-12 10:53:32 -07:00
.gitignore Adapt gitignore for modules 2020-01-22 13:49:05 -08: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
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md 2019-04-30 10:58:45 -07:00
COPYRIGHT ICP: Improve AES-GCM performance 2020-05-12 10:53:32 -07:00
LICENSE Update build system and packaging 2018-05-29 16:00:33 -07:00
META Tag zfs-0.8.4 2020-05-12 10:53:32 -07:00
Makefile.am Perform KABI checks in parallel 2020-01-22 13:49:01 -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
autogen.sh Cause autogen.sh to fail if autoreconf fails 2018-07-06 09:27:37 -07:00
configure.ac Fix zfs-functions packaging bug 2020-05-12 10:53:32 -07:00
copy-builtin Allow copy-builtin to work with modified sources 2018-10-17 12:06:05 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00

README.md

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.