about summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/linux/dpdk-kmods/default.nix14
-rw-r--r--pkgs/os-specific/linux/dpdk/default.nix24
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix8
-rw-r--r--pkgs/os-specific/linux/kernel/xanmod-kernels.nix8
-rw-r--r--pkgs/os-specific/linux/pktgen/default.nix16
-rw-r--r--pkgs/os-specific/linux/zfs/unstable.nix6
6 files changed, 21 insertions, 55 deletions
diff --git a/pkgs/os-specific/linux/dpdk-kmods/default.nix b/pkgs/os-specific/linux/dpdk-kmods/default.nix
index a3e4f6663860..1dc026125c3d 100644
--- a/pkgs/os-specific/linux/dpdk-kmods/default.nix
+++ b/pkgs/os-specific/linux/dpdk-kmods/default.nix
@@ -2,20 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dpdk-kmods";
-  version = "2022-08-29";
+  version = "2023-02-05";
 
   src = fetchzip {
-    url = "https://git.dpdk.org/dpdk-kmods/snapshot/dpdk-kmods-4a589f7bed00fc7009c93d430bd214ac7ad2bb6b.tar.xz";
-    sha256 = "sha256-l9asJuw2nl63I1BxK6udy2pNunRiMJxyoXeg9V5+WgI=";
+    url = "https://git.dpdk.org/dpdk-kmods/snapshot/dpdk-kmods-e721c733cd24206399bebb8f0751b0387c4c1595.tar.xz";
+    sha256 = "sha256-AG5Lthp+CPR4R7I23DUmoWAmET8gLEFHHdjk2TUbQn4=";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://git.launchpad.net/ubuntu/+source/dpdk-kmods/plain/debian/patches/0001-support-linux-5.18.patch?id=9d628c02c169d8190bc2cb6afd81e4d364c382cd";
-      sha256 = "sha256-j4kpx1DOnmf5lFxOhaVFNT7prEy1jrJERX2NFaybTPU=";
-    })
-  ];
-
   hardeningDisable = [ "pic" ];
 
   makeFlags = kernel.makeFlags ++ [
@@ -39,5 +32,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Only;
     maintainers = [ maintainers.mic92 ];
     platforms = platforms.linux;
+    broken = kernel.isHardened;
   };
 }
diff --git a/pkgs/os-specific/linux/dpdk/default.nix b/pkgs/os-specific/linux/dpdk/default.nix
index 5c20e45ec354..bd5d9db661a8 100644
--- a/pkgs/os-specific/linux/dpdk/default.nix
+++ b/pkgs/os-specific/linux/dpdk/default.nix
@@ -1,5 +1,4 @@
 { stdenv, lib
-, kernel
 , fetchurl
 , pkg-config, meson, ninja, makeWrapper
 , libbsd, numactl, libbpf, zlib, elfutils, jansson, openssl, libpcap, rdma-core
@@ -13,16 +12,13 @@
   )
 }:
 
-let
-  mod = kernel != null;
-  dpdkVersion = "23.07";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "dpdk";
-  version = "${dpdkVersion}" + lib.optionalString mod "-${kernel.version}";
+  version = "23.11";
 
   src = fetchurl {
-    url = "https://fast.dpdk.org/rel/dpdk-${dpdkVersion}.tar.xz";
-    sha256 = "sha256-4IYU6K65KUB9c9cWmZKJpE70A0NSJx8JOX7vkysjs9Y=";
+    url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz";
+    sha256 = "sha256-ZPpY/fyelRDo5BTjvt0WW9PUykZaIxsoAyP4PNU/2GU=";
   };
 
   nativeBuildInputs = [
@@ -44,7 +40,7 @@ in stdenv.mkDerivation {
     openssl.dev
     zlib
     python3
-  ] ++ lib.optionals mod kernel.moduleBuildDependencies;
+  ];
 
   propagatedBuildInputs = [
     # Propagated to support current DPDK users in nixpkgs which statically link
@@ -56,21 +52,15 @@ in stdenv.mkDerivation {
 
   postPatch = ''
     patchShebangs config/arm buildtools
-  '' + lib.optionalString mod ''
-    # kernel_install_dir is hardcoded to `/lib/modules`; patch that.
-    sed -i "s,kernel_install_dir *= *['\"].*,kernel_install_dir = '$kmod/lib/modules/${kernel.modDirVersion}'," kernel/linux/meson.build
   '';
 
   mesonFlags = [
     "-Dtests=false"
     "-Denable_docs=true"
-    "-Denable_kmods=${lib.boolToString mod}"
+    "-Ddeveloper_mode=disabled"
   ]
-  # kni kernel driver is currently not compatble with 5.11
-  ++ lib.optional (mod && kernel.kernelOlder "5.11") "-Ddisable_drivers=kni"
   ++ [(if shared then "-Ddefault_library=shared" else "-Ddefault_library=static")]
   ++ lib.optional (machine != null) "-Dmachine=${machine}"
-  ++ lib.optional mod "-Dkernel_dir=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
   ++ lib.optional (withExamples != []) "-Dexamples=${builtins.concatStringsSep "," withExamples}";
 
   postInstall = ''
@@ -87,7 +77,6 @@ in stdenv.mkDerivation {
 
   outputs =
     [ "out" "doc" ]
-    ++ lib.optional mod "kmod"
     ++ lib.optional (withExamples != []) "examples";
 
   meta = with lib; {
@@ -96,6 +85,5 @@ in stdenv.mkDerivation {
     license = with licenses; [ lgpl21 gpl2 bsd2 ];
     platforms =  platforms.linux;
     maintainers = with maintainers; [ magenbluten orivej mic92 zhaofengli ];
-    broken = mod && kernel.isHardened;
   };
 }
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 1e50fc3dfa15..f46f413f9e0a 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -23,7 +23,7 @@ let
 
 
   # configuration items have to be part of a subattrs
-  flattenKConf =  nested: mapAttrs (_: head) (zipAttrs (attrValues nested));
+  flattenKConf = nested: mapAttrs (name: values: if length values == 1 then head values else throw "duplicate kernel configuration option: ${name}") (zipAttrs (attrValues nested));
 
   whenPlatformHasEBPFJit =
     mkIf (stdenv.hostPlatform.isAarch32 ||
@@ -111,9 +111,6 @@ let
       # Enable CPU energy model for scheduling
       ENERGY_MODEL                     = whenAtLeast "5.0" yes;
 
-      # Enable scheduling stats collection
-      SCHEDSTATS                       = yes;
-
       # Enable thermal interface netlink API
       THERMAL_NETLINK                  = whenAtLeast "5.9" yes;
 
@@ -413,7 +410,6 @@ let
       whenHasDevicePrivate = mkIf (!stdenv.isx86_32 && versionAtLeast version "5.1");
     in {
       DRM_LEGACY = whenOlder "6.8" no;
-      DRM_SIMPLEDRM = yes;
 
       NOUVEAU_LEGACY_CTX_SUPPORT = whenBetween "5.2" "6.3" no;
 
@@ -890,7 +886,6 @@ let
       NOTIFIER_ERROR_INJECTION = option no;
       RCU_PERF_TEST            = whenOlder "5.9" no;
       RCU_SCALE_TEST           = whenAtLeast "5.10" no;
-      RCU_TORTURE_TEST         = option no;
       TEST_ASYNC_DRIVER_PROBE  = option no;
       WW_MUTEX_SELFTEST        = option no;
       XZ_DEC_TEST              = option no;
@@ -999,7 +994,6 @@ let
       # Removed on 5.17 as it was unused
       # upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0a4ee518185e902758191d968600399f3bc2be31
       CLEANCACHE = whenOlder "5.17" (option yes);
-      CRASH_DUMP = option no;
 
       FSCACHE_STATS = yes;
 
diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
index ea0db48c75f3..08e6f83a2ffe 100644
--- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
@@ -6,14 +6,14 @@ let
   # NOTE: When updating these, please also take a look at the changes done to
   # kernel config in the xanmod version commit
   ltsVariant = {
-    version = "6.6.21";
-    hash = "sha256-DDkjrtKK7zIffVMuBtHvSWp0GtMA87YuOp8AhUw64+Y=";
+    version = "6.6.22";
+    hash = "sha256-vpWUdzgI8i/1r5nMp0tx+x67GDTnjQF5ueITIl36lvA=";
     variant = "lts";
   };
 
   mainVariant = {
-    version = "6.7.9";
-    hash = "sha256-/YoZTclMdJBQ8iwpfm/Ne/YLNQneN0hccy95o3fWvGM=";
+    version = "6.7.10";
+    hash = "sha256-uwlvQh11uf1skSdlIz7XdjRkdI/wf3VqEeOP20JO5OU=";
     variant = "main";
   };
 
diff --git a/pkgs/os-specific/linux/pktgen/default.nix b/pkgs/os-specific/linux/pktgen/default.nix
index b81bf74a3d9e..66971444e71a 100644
--- a/pkgs/os-specific/linux/pktgen/default.nix
+++ b/pkgs/os-specific/linux/pktgen/default.nix
@@ -18,23 +18,15 @@
 
 stdenv.mkDerivation rec {
   pname = "pktgen";
-  version = "22.07.1";
+  version = "23.10.0";
 
   src = fetchFromGitHub {
     owner = "pktgen";
     repo = "Pktgen-DPDK";
     rev = "pktgen-${version}";
-    sha256 = "sha256-wBLGwVdn3ymUTVv7J/kbQYz4WNIgV246PHg51+FStUo=";
+    sha256 = "sha256-eujVEU+XkxF1kIGQJoBW3oXXNSqBEzx6mwR2XYoHinM=";
   };
 
-  patches = [
-    (fetchpatch {
-      # Ealier DPDK deprecated some macros, which were finally removed in >= 22.11
-      url = "https://github.com/pktgen/Pktgen-DPDK/commit/089ef94ac04629f7380f5e618443bcacb2cef5ab.patch";
-      sha256 = "sha256-ITU/dIfu7QPpdIVYuCuDhDG9rVF+n8i1YYn9bFmQUME=";
-    })
-  ];
-
   nativeBuildInputs = [ meson ninja pkg-config ];
 
   buildInputs = [
@@ -47,9 +39,7 @@ stdenv.mkDerivation rec {
   GUI = lib.optionalString withGtk "true";
 
   env.NIX_CFLAGS_COMPILE = toString [
-    # Needed with GCC 12
-    "-Wno-error=address"
-    "-Wno-error=use-after-free"
+    "-Wno-error=sign-compare"
   ];
 
   # requires symbols from this file
diff --git a/pkgs/os-specific/linux/zfs/unstable.nix b/pkgs/os-specific/linux/zfs/unstable.nix
index 052dd0cd74c9..b75de560b1d5 100644
--- a/pkgs/os-specific/linux/zfs/unstable.nix
+++ b/pkgs/os-specific/linux/zfs/unstable.nix
@@ -22,13 +22,13 @@ callPackage ./generic.nix args {
   # 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.2.3-unstable-2024-02-12";
-  rev = "4635453d9f06771678b2125d5b45852b4d2eb04f";
+  version = "2.2.3-unstable-2024-03-21";
+  rev = "58211157bf866bbcdd8720e92c27297db3ba75d6";
 
   isUnstable = true;
   tests = [
     nixosTests.zfs.unstable
   ];
 
-  hash = "sha256-ch1/R61cn1BtWkkH2IViWjVp22XFz4/WbByquN+vybs=";
+  hash = "sha256-zTTzHo/UDsTGp/b7BmCmy/m115HVipSG8Id/pnkUrvQ=";
 }