summary refs log tree commit diff
diff options
context:
space:
mode:
authorJörg Thalheim <joerg@thalheim.io>2019-06-06 09:24:11 +0100
committerJörg Thalheim <joerg@thalheim.io>2019-06-06 10:07:43 +0100
commit11b8a5f20e6cb7c3609638ac94a0a446e8d67aee (patch)
tree0402b44252f0f894763142e5bd4805c980dad85a
parent2cca7180c181383cb3cd1335d365f752638deb80 (diff)
downloadnixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.tar
nixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.tar.gz
nixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.tar.bz2
nixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.tar.lz
nixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.tar.xz
nixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.tar.zst
nixpkgs-11b8a5f20e6cb7c3609638ac94a0a446e8d67aee.zip
zfs: 0.7.13 -> 0.8.0
Same as zfsUnstable for the moment.
We still keep the zfsUnstable expression as we likely
need it in the near future again.
Also remove spl since it is no longer needed.
-rw-r--r--nixos/modules/tasks/filesystems/zfs.nix6
-rw-r--r--pkgs/os-specific/linux/spl/default.nix61
-rw-r--r--pkgs/os-specific/linux/spl/install_prefix.patch168
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix27
-rw-r--r--pkgs/top-level/all-packages.nix4
5 files changed, 9 insertions, 257 deletions
diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix
index 37a19fb9fc8..93bbd141284 100644
--- a/nixos/modules/tasks/filesystems/zfs.nix
+++ b/nixos/modules/tasks/filesystems/zfs.nix
@@ -24,11 +24,9 @@ let
   kernel = config.boot.kernelPackages;
 
   packages = if config.boot.zfs.enableUnstable then {
-    spl = null;
     zfs = kernel.zfsUnstable;
     zfsUser = pkgs.zfsUnstable;
   } else {
-    spl = kernel.spl;
     zfs = kernel.zfs;
     zfsUser = pkgs.zfs;
   };
@@ -325,8 +323,8 @@ in
       virtualisation.lxd.zfsSupport = true;
 
       boot = {
-        kernelModules = [ "zfs" ] ++ optional (!cfgZfs.enableUnstable) "spl";
-        extraModulePackages = with packages; [ zfs ] ++ optional (!cfgZfs.enableUnstable) spl;
+        kernelModules = [ "zfs" ];
+        extraModulePackages = with packages; [ zfs ];
       };
 
       boot.initrd = mkIf inInitrd {
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
deleted file mode 100644
index 4e49256be9f..00000000000
--- a/pkgs/os-specific/linux/spl/default.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ fetchFromGitHub, stdenv, autoreconfHook, coreutils, gawk
-, fetchpatch
-# Kernel dependencies
-, kernel
-}:
-
-with stdenv.lib;
-
-assert kernel != null;
-
-stdenv.mkDerivation rec {
-  name = "spl-${version}-${kernel.version}";
-  version = "0.7.13";
-
-  src = fetchFromGitHub {
-    owner = "zfsonlinux";
-    repo = "spl";
-    rev = "spl-${version}";
-    sha256 = "1rzqgiszy8ad2gx20577azp1y5jgad0907slfzl5y2zb05jgaipa";
-  };
-
-  patches = [ ./install_prefix.patch ];
-
-  # Backported fix for 0.7.13 to build with 5.1, please remove when updating to 0.7.14
-  postPatch = optionalString (versionAtLeast kernel.version "5.1") ''
-    sed -i 's/get_ds()/KERNEL_DS/g' module/spl/spl-vnode.c
-  '';
-
-  nativeBuildInputs = [ autoreconfHook ] ++ kernel.moduleBuildDependencies;
-
-  hardeningDisable = [ "fortify" "stackprotector" "pic" ];
-
-  preConfigure = ''
-    substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid
-    substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
-    substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
-    substituteInPlace ./module/splat/splat-linux.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
-  '';
-
-  configureFlags = [
-    "--with-config=kernel"
-    "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
-    "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
-  ];
-
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
-
-    longDescription = ''
-      This kernel module is a porting layer for ZFS to work inside the linux
-      kernel.
-    '';
-
-    homepage = http://zfsonlinux.org/;
-    platforms = platforms.linux;
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ jcumming wizeman fpletz globin ];
-  };
-}
diff --git a/pkgs/os-specific/linux/spl/install_prefix.patch b/pkgs/os-specific/linux/spl/install_prefix.patch
deleted file mode 100644
index 566aab828ef..00000000000
--- a/pkgs/os-specific/linux/spl/install_prefix.patch
+++ /dev/null
@@ -1,168 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index 4977448..ac17217 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -12,10 +12,10 @@ endif
- if CONFIG_KERNEL
- SUBDIRS += module
- 
--extradir = @prefix@/src/spl-$(VERSION)
-+extradir = @prefix@/libexec/spl
- extra_HEADERS = spl.release.in spl_config.h.in
- 
--kerneldir = @prefix@/src/spl-$(VERSION)/$(LINUX_VERSION)
-+kerneldir = @prefix@/libexec/spl/$(LINUX_VERSION)
- nodist_kernel_HEADERS = spl.release spl_config.h module/$(LINUX_SYMBOLS)
- endif
- 
-diff --git a/include/Makefile.am b/include/Makefile.am
-index 3200222..4a47aaa 100644
---- a/include/Makefile.am
-+++ b/include/Makefile.am
-@@ -13,6 +13,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include
-+kerneldir = @prefix@/libexec/spl/include
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/fs/Makefile.am b/include/fs/Makefile.am
-index e0da4b3..d6d7af0 100644
---- a/include/fs/Makefile.am
-+++ b/include/fs/Makefile.am
-@@ -8,6 +8,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/fs
-+kerneldir = @prefix@/libexec/spl/include/fs
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/linux/Makefile.am b/include/linux/Makefile.am
-index 712e94e..4af9fb7 100644
---- a/include/linux/Makefile.am
-+++ b/include/linux/Makefile.am
-@@ -18,6 +18,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/linux
-+kerneldir = @prefix@/libexec/spl/include/linux
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/rpc/Makefile.am b/include/rpc/Makefile.am
-index cfc8246..4fbd33d 100644
---- a/include/rpc/Makefile.am
-+++ b/include/rpc/Makefile.am
-@@ -9,6 +9,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/rpc
-+kerneldir = @prefix@/libexec/spl/include/rpc
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/sharefs/Makefile.am b/include/sharefs/Makefile.am
-index 10e7093..febecdf 100644
---- a/include/sharefs/Makefile.am
-+++ b/include/sharefs/Makefile.am
-@@ -8,6 +8,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/sharefs
-+kerneldir = @prefix@/libexec/spl/include/sharefs
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/sys/Makefile.am b/include/sys/Makefile.am
-index 73c4a84..31a9f50 100644
---- a/include/sys/Makefile.am
-+++ b/include/sys/Makefile.am
-@@ -107,7 +107,7 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/sys
-+kerneldir = @prefix@/libexec/spl/include/sys
- kernel_HEADERS = $(KERNEL_H)
- endif
- 
-diff --git a/include/sys/fm/Makefile.am b/include/sys/fm/Makefile.am
-index 2821cbe..a84ce8e 100644
---- a/include/sys/fm/Makefile.am
-+++ b/include/sys/fm/Makefile.am
-@@ -9,6 +9,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/sys/fm
-+kerneldir = @prefix@/libexec/spl/include/sys/fm
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/sys/fs/Makefile.am b/include/sys/fs/Makefile.am
-index 581083e..0c35fb7 100644
---- a/include/sys/fs/Makefile.am
-+++ b/include/sys/fs/Makefile.am
-@@ -8,6 +8,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/sys/fs
-+kerneldir = @prefix@/libexec/spl/include/sys/fs
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/util/Makefile.am b/include/util/Makefile.am
-index e2bf09f..3f5d6ce 100644
---- a/include/util/Makefile.am
-+++ b/include/util/Makefile.am
-@@ -9,6 +9,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/util
-+kerneldir = @prefix@/libexec/spl/include/util
- kernel_HEADERS = $(KERNEL_H)
- endif
-diff --git a/include/vm/Makefile.am b/include/vm/Makefile.am
-index 7faab0a..8148b3d 100644
---- a/include/vm/Makefile.am
-+++ b/include/vm/Makefile.am
-@@ -10,6 +10,6 @@ USER_H =
- EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
- 
- if CONFIG_KERNEL
--kerneldir = @prefix@/src/spl-$(VERSION)/include/vm
-+kerneldir = @prefix@/libexec/spl/include/vm
- kernel_HEADERS = $(KERNEL_H)
- endif
---- a/module/Makefile.in
-+++ b/module/Makefile.in
-@@ -21,22 +21,22 @@
- modules_install:
- 	@# Install the kernel modules
- 	$(MAKE) -C @LINUX_OBJ@ M=`pwd` $@ \
--		INSTALL_MOD_PATH=$(DESTDIR)$(INSTALL_MOD_PATH) \
-+		INSTALL_MOD_PATH=@prefix@/$(INSTALL_MOD_PATH) \
- 		INSTALL_MOD_DIR=$(INSTALL_MOD_DIR) \
- 		KERNELRELEASE=@LINUX_VERSION@
- 	@# Remove extraneous build products when packaging
--	kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@; \
--	if [ -n "$(DESTDIR)" ]; then \
-+	kmoddir=@prefix@/$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@; \
-+	if [ -n "@prefix@" ]; then \
- 		find $$kmoddir -name 'modules.*' | xargs $(RM); \
- 	fi
--	sysmap=$(DESTDIR)$(INSTALL_MOD_PATH)/boot/System.map-@LINUX_VERSION@; \
-+	sysmap=@prefix@/$(INSTALL_MOD_PATH)/boot/System.map-@LINUX_VERSION@; \
- 	if [ -f $$sysmap ]; then \
- 		depmod -ae -F $$sysmap @LINUX_VERSION@; \
- 	fi
- 
- modules_uninstall:
- 	@# Uninstall the kernel modules
--	kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@
-+	kmoddir=@prefix@/$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@
- 	list='$(subdir-m)'; for subdir in $$list; do \
- 		$(RM) -R $$kmoddir/$(INSTALL_MOD_DIR)/$$subdir; \
- 	done
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index c2d4d8645a4..5e20f112fee 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -9,7 +9,7 @@
 , gawk, gnugrep, gnused, systemd
 
 # Kernel dependencies
-, kernel ? null, spl ? null
+, kernel ? null
 }:
 
 with stdenv.lib;
@@ -20,10 +20,8 @@ let
   common = { version
     , sha256
     , extraPatches
-    , spl
     , rev ? "zfs-${version}"
     , isUnstable ? false
-    , isLegacyCrypto ? false
     , incompatibleKernelVersion ? null }:
     if buildKernel &&
       (incompatibleKernelVersion != null) &&
@@ -52,10 +50,8 @@ let
 
       nativeBuildInputs = [ autoreconfHook nukeReferences ]
         ++ optional buildKernel (kernel.moduleBuildDependencies ++ [ perl ]);
-      buildInputs =
-           optionals buildKernel [ spl ]
-        ++ optionals buildUser [ zlib libuuid python3 attr ]
-        ++ optionals (buildUser && (isUnstable || isLegacyCrypto)) [ openssl ]
+      buildInputs = optionals buildUser [ zlib libuuid python3 attr ]
+        ++ optionals (buildUser) [ openssl ]
         ++ optional stdenv.hostPlatform.isMusl [ libtirpc ];
 
       # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
@@ -107,8 +103,6 @@ let
       ] ++ optionals buildKernel [
         "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
         "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
-      ] ++ optionals (buildKernel && spl != null) [
-        "--with-spl=${spl}/libexec/spl"
       ];
 
       enableParallelBuilding = true;
@@ -162,19 +156,13 @@ in {
     # incompatibleKernelVersion = "4.20";
 
     # this package should point to the latest release.
-    version = "0.7.13";
+    version = "0.8.0";
 
-    sha256 = "1l77bq7pvc54vl15pnrjd0njgpf00qjzy0x85dpfh5jxng84x1fb";
+    sha256 = "1lqb9q2im5bbm4l8kfb31cb6rvy37h5ni6rnqlki127ynilymkj8";
 
     extraPatches = [
-      # in case this gets out of date, just send Mic92 a pull request!
-      (fetchpatch {
-        url = "https://github.com/Mic92/zfs/commit/cf23c1d38bfc698a8a729fc0c5f9ca41591f4d95.patch";
-        sha256 = "14v3x9ipvg2qd1vyf70nv909jd5zdxlsw5y8k60pfyvwm7g80wr5";
-      })
+      ./build-fixes-unstable.patch
     ];
-
-    inherit spl;
   };
 
   zfsUnstable = common rec {
@@ -189,10 +177,7 @@ in {
     isUnstable = true;
 
     extraPatches = [
-      # in case this gets out of date, just send Mic92 a pull request!
       ./build-fixes-unstable.patch
     ];
-
-    spl = null;
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7b0e1cf58d6..a1ad6615308 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -15424,8 +15424,6 @@ in
 
     sch_cake = callPackage ../os-specific/linux/sch_cake { };
 
-    spl = callPackage ../os-specific/linux/spl { };
-
     sysdig = callPackage ../os-specific/linux/sysdig {};
 
     systemtap = callPackage ../development/tools/profiling/systemtap { };
@@ -15454,7 +15452,7 @@ in
 
     inherit (callPackage ../os-specific/linux/zfs {
       configFile = "kernel";
-      inherit kernel spl;
+      inherit kernel;
      }) zfsStable zfsUnstable;
 
      zfs = zfsStable;