summary refs log tree commit diff
path: root/pkgs/os-specific/linux/zfs
diff options
context:
space:
mode:
authorRaito Bezarius <masterancpp@gmail.com>2023-03-29 14:13:21 +0200
committerJörg Thalheim <joerg@thalheim.io>2023-06-16 11:07:33 +0200
commitd4cab20b3a76fef4b9a487c37107df6351ebce33 (patch)
tree676c0f1af7b490d0d01aad56b4df9450919b6447 /pkgs/os-specific/linux/zfs
parent0b62a4642d074926e94018aff3d707af5302da6f (diff)
downloadnixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.tar
nixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.tar.gz
nixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.tar.bz2
nixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.tar.lz
nixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.tar.xz
nixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.tar.zst
nixpkgs-d4cab20b3a76fef4b9a487c37107df6351ebce33.zip
zfs: add option to restore kernel_neon for linux 6.2 support on aarch64
Introduced in https://github.com/torvalds/linux/commit/aaeca98456431a8d9382ecf48ac4843e252c07b3
with the usual disdain for ZFS.

We have been there in the past with
<https://www.phoronix.com/news/NixOS-Linux-5.0-ZFS-FPU-Drop> /
https://github.com/NixOS/nixpkgs/pull/61076.

This fixes ZFS on aarch64 until the next breakage.

See https://github.com/openzfs/zfs/issues/14555 for original upstream
issue.
Diffstat (limited to 'pkgs/os-specific/linux/zfs')
-rw-r--r--pkgs/os-specific/linux/zfs/stable.nix8
-rw-r--r--pkgs/os-specific/linux/zfs/unstable.nix16
2 files changed, 16 insertions, 8 deletions
diff --git a/pkgs/os-specific/linux/zfs/stable.nix b/pkgs/os-specific/linux/zfs/stable.nix
index 77ea4bb84b4..e208bcba9c7 100644
--- a/pkgs/os-specific/linux/zfs/stable.nix
+++ b/pkgs/os-specific/linux/zfs/stable.nix
@@ -2,6 +2,7 @@
 , kernel ? null
 , stdenv
 , linuxKernel
+, removeLinuxDRM ? false
 , ...
 } @ args:
 
@@ -11,10 +12,13 @@ in
 callPackage ./generic.nix args {
   # check the release notes for compatible kernels
   kernelCompatible =
-    if stdenv'.isx86_64
+    if stdenv'.isx86_64 || removeLinuxDRM
     then kernel.kernelOlder "6.4"
     else kernel.kernelOlder "6.2";
-  latestCompatibleLinuxPackages = linuxKernel.packages.linux_6_3;
+  latestCompatibleLinuxPackages = if stdenv'.isx86_64 || removeLinuxDRM then
+    linuxKernel.packages.linux_6_3
+  else
+    linuxKernel.packages.linux_6_1;
 
   # this package should point to the latest release.
   version = "2.1.12";
diff --git a/pkgs/os-specific/linux/zfs/unstable.nix b/pkgs/os-specific/linux/zfs/unstable.nix
index b8cf789e8ff..f262f77970b 100644
--- a/pkgs/os-specific/linux/zfs/unstable.nix
+++ b/pkgs/os-specific/linux/zfs/unstable.nix
@@ -2,6 +2,7 @@
 , kernel ? null
 , stdenv
 , linuxKernel
+, removeLinuxDRM ? false
 , ...
 } @ args:
 
@@ -13,19 +14,22 @@ callPackage ./generic.nix args {
   # NOTE:
   #   zfs-2.1.9<=x<=2.1.10 is broken with aarch64-linux-6.2
   #   for future releases, please delete this condition.
-  kernelCompatible = if stdenv'.isx86_64
-    then kernel.kernelOlder "6.3"
+  kernelCompatible = if stdenv'.isx86_64 || removeLinuxDRM
+    then kernel.kernelOlder "6.4"
     else kernel.kernelOlder "6.2";
-  latestCompatibleLinuxPackages = linuxKernel.packages.linux_6_1;
+
+  latestCompatibleLinuxPackages = if stdenv'.isx86_64 || removeLinuxDRM then
+    linuxKernel.packages.linux_6_3
+  else
+    linuxKernel.packages.linux_6_1;
 
   # this package should point to a version / git revision compatible with the latest kernel release
   # IMPORTANT: Always use a tagged release candidate or commits from the
   # zfs-<version>-staging branch, because this is tested by the OpenZFS
   # maintainers.
-  version = "2.1.12-staging-2023-04-18";
-  rev = "e25f9131d679692704c11dc0c1df6d4585b70c35";
+  version = "2.1.12";
 
-  sha256 = "tJLwyqUj1l5F0WKZDeMGrEFa8fc/axKqm31xtN51a5M=";
+  sha256 = "eYUR5d4gpTrlFu6j1uL83DWL9uPGgAUDRdSEb73V5i4=";
 
   isUnstable = true;
 }