From 2262713c9b90985749490f6e7c8eea5fcd11ccc9 Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 7 Mar 2026 20:18:08 +0300 Subject: [PATCH 1/5] linux_testing: 6.19-rc8 -> 7.0-rc2 --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 51c85bacf3f6..bfbc16d95176 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -1,7 +1,7 @@ { "testing": { - "version": "6.19-rc8", - "hash": "sha256:1vwlhsk3cry48p9v2kqqxkmrsw2sjgspfylv3c7r5430yk7fhyg1", + "version": "7.0-rc2", + "hash": "sha256:11zw5rck5hg1w8jjjgc8hjmswzdv4k1wqnkg4zmzxg0ds447cd0b", "lts": false }, "6.1": { From 38123e3ea3018574b8906ca55e83d3cb51e6289a Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 7 Mar 2026 20:18:12 +0300 Subject: [PATCH 2/5] linux_6_12: 6.12.75 -> 6.12.76 --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index bfbc16d95176..1d63ad45fc6a 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -25,8 +25,8 @@ "lts": true }, "6.12": { - "version": "6.12.75", - "hash": "sha256:0xy1q4x18z6ghaw481hqvkmnkcgxn00nb0n4224amwbgalkpkvh6", + "version": "6.12.76", + "hash": "sha256:15nq7agr492b9lh57xp10hs48dx9g7k253y2lm4vvrj69j1kxd5v", "lts": true }, "6.18": { From 8de310b1a984e9b2e678d0e66a058f7e9aaf8428 Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 7 Mar 2026 20:18:15 +0300 Subject: [PATCH 3/5] linux_6_6: 6.6.128 -> 6.6.129 --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 1d63ad45fc6a..4a13564ff155 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -20,8 +20,8 @@ "lts": true }, "6.6": { - "version": "6.6.128", - "hash": "sha256:0j4f6imsxm5pyqk2yn4snv47q272dwpzp0w8qcaiy0l0hjxk75k6", + "version": "6.6.129", + "hash": "sha256:12j42awg44w97zq8fzifpm300jm9q9ya7qkpn7xbnkr2480qz86a", "lts": true }, "6.12": { From b938d814da6b4e3ae249cdd25489206d5dfd1f02 Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 7 Mar 2026 20:18:18 +0300 Subject: [PATCH 4/5] linux_6_1: 6.1.165 -> 6.1.166 --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 4a13564ff155..eb6bfae41550 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -5,8 +5,8 @@ "lts": false }, "6.1": { - "version": "6.1.165", - "hash": "sha256:1x1fsaax7yd5p3vwcgp04hbcafmwfqiw1bz0qxsip45yy62730as", + "version": "6.1.166", + "hash": "sha256:0jcl12gjlfdf9pwqg1m84rzwnrj3grxxgk5blrq8zlaq45sgr3c1", "lts": true }, "5.15": { From b215ccdf1cc7a8d87167fb775097ffa738a888fe Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 7 Mar 2026 20:36:43 +0300 Subject: [PATCH 5/5] linux/common-config: update for 7.0, tweak preemption settings --- pkgs/os-specific/linux/kernel/common-config.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 23b8aabf4e9a..66859facc6d9 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -575,7 +575,7 @@ let # Enable Hyper-V Synthetic DRM Driver DRM_HYPERV = whenAtLeast "5.14" module; # And disable the legacy framebuffer driver when we have the new one - FB_HYPERV = whenAtLeast "5.14" no; + FB_HYPERV = whenBetween "5.14" "7.0" no; } // lib.optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux") { # Intel GVT-g graphics virtualization supports 64-bit only @@ -739,7 +739,9 @@ let NFS_FSCACHE = yes; NFS_SWAP = yes; NFS_V3_ACL = yes; - NFS_V4_1 = yes; # NFSv4.1 client support + # NFSv4.1 is enabled unconditionally on 7.0 and up + # see: https://github.com/torvalds/linux/commit/7537db24806fdc3d3ec4fef53babdc22c9219e75 + NFS_V4_1 = whenOlder "7.0" yes; NFS_V4_2 = yes; NFS_V4_SECURITY_LABEL = yes; NFS_LOCALIO = whenAtLeast "6.12" yes; @@ -1168,7 +1170,7 @@ let ACCESSIBILITY = yes; # Accessibility support AUXDISPLAY = yes; # Auxiliary Display support - HIPPI = yes; + HIPPI = whenOlder "7.0" yes; MTD_COMPLEX_MAPPINGS = yes; # needed for many devices SCSI_LOWLEVEL = yes; # enable lots of SCSI devices @@ -1378,8 +1380,14 @@ let HMM_MIRROR = yes; DRM_AMDGPU_USERPTR = yes; + # We want to prefer PREEMPT_LAZY when available, and fall back on PREEMPT_VOLUNTARY. + # It just so happens that kconfig asks for PREEMPT_LAZY first, so doing it like this + # does what we want. + # FIXME: This is stupid and bad. + # See: https://github.com/torvalds/linux/commit/7dadeaa6e851e7d67733f3e24fc53ee107781d0f PREEMPT = no; - PREEMPT_VOLUNTARY = yes; + PREEMPT_LAZY = option yes; + PREEMPT_VOLUNTARY = option yes; X86_AMD_PLATFORM_DEVICE = lib.mkIf stdenv.hostPlatform.isx86 yes; X86_PLATFORM_DRIVERS_DELL = lib.mkIf stdenv.hostPlatform.isx86 (whenAtLeast "5.12" yes);