From f807233e88d29b4c1170c0634a2c0c9ac484ab66 Mon Sep 17 00:00:00 2001 From: Kiskae Date: Tue, 30 May 2023 18:35:21 +0200 Subject: [PATCH 1/4] linuxPackages_5_4_hardened.kernel: option removed in 5.4.208 change removing config option: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=d0d583484d2ed9f5903edbbfa7e2a68f78b950b0 First release after: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=77ba2b9b46f8acead2606759e8196b7076eaeeea Fixes #233268 (cherry picked from commit 4d2df72e6a080b5f2e5c89a4f51a9af66291083f) --- pkgs/os-specific/linux/kernel/hardened/config.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/hardened/config.nix b/pkgs/os-specific/linux/kernel/hardened/config.nix index 5a1a710ba3b7..3f23b8c1344d 100644 --- a/pkgs/os-specific/linux/kernel/hardened/config.nix +++ b/pkgs/os-specific/linux/kernel/hardened/config.nix @@ -41,7 +41,7 @@ assert (versionAtLeast version "4.9"); DEBUG_SG = yes; SCHED_STACK_END_CHECK = yes; - REFCOUNT_FULL = whenOlder "5.5" yes; + REFCOUNT_FULL = whenOlder "5.4.208" yes; # Randomize page allocator when page_alloc.shuffle=1 SHUFFLE_PAGE_ALLOCATOR = whenAtLeast "5.2" yes; From 37213797733d005f8f02b9cae135cab50fd4bfcf Mon Sep 17 00:00:00 2001 From: Kiskae Date: Tue, 30 May 2023 18:35:58 +0200 Subject: [PATCH 2/4] linuxPackages_5_4_hardened.kernel: unbreak (cherry picked from commit a65a9e313181d325bec9abf20149bcf1bfd07de4) --- pkgs/top-level/linux-kernels.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index 40a8ff3020c5..8a6811d23c89 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -49,7 +49,7 @@ let broken = kernel.meta.broken || lib.versions.majorMinor version == "4.14" || - (stdenv.isx86_64 && lib.versionAtLeast version "4.19" && lib.versionOlder version "5.5"); + (stdenv.isx86_64 && lib.versions.majorMinor version == "4.19"); }; }; kernelPatches = kernel.kernelPatches ++ [ From 92d8ea62ea9dce4df9e5b43476b8bff49b358a88 Mon Sep 17 00:00:00 2001 From: Kiskae Date: Wed, 31 May 2023 12:46:35 +0200 Subject: [PATCH 3/4] linuxKernel.packages.linux_(4_14,4_19}_hardened: unbreak (cherry picked from commit 7f330db6cc5d0074e8a7adaa62ba874f782eb9c6) --- pkgs/top-level/linux-kernels.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index 8a6811d23c89..bf3432f3cc2d 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -46,10 +46,7 @@ let inherit sha256; }; extraMeta = { - broken = - kernel.meta.broken || - lib.versions.majorMinor version == "4.14" || - (stdenv.isx86_64 && lib.versions.majorMinor version == "4.19"); + broken = kernel.meta.broken; }; }; kernelPatches = kernel.kernelPatches ++ [ From 59cc48393a510476d59c82088d3526243f4e9d87 Mon Sep 17 00:00:00 2001 From: Kiskae Date: Wed, 31 May 2023 12:45:25 +0200 Subject: [PATCH 4/4] linuxKernel.kernels.linux_*_hardened: move overrides to kernels derive `packages` from `kernels`, unify definitions (cherry picked from commit 89c480cdc0a61513128aa2424ec9545f7dcf4b6c) --- pkgs/top-level/linux-kernels.nix | 38 ++++++++++++++++---------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index bf3432f3cc2d..890c898e129e 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -262,9 +262,18 @@ in { linux_hardened = hardenedKernelFor packageAliases.linux_default.kernel { }; - linux_4_14_hardened = hardenedKernelFor kernels.linux_4_14 { }; - linux_4_19_hardened = hardenedKernelFor kernels.linux_4_19 { }; - linux_5_4_hardened = hardenedKernelFor kernels.linux_5_4 { }; + linux_4_14_hardened = hardenedKernelFor kernels.linux_4_14 { + stdenv = gcc10Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc10Stdenv; }; + }; + linux_4_19_hardened = hardenedKernelFor kernels.linux_4_19 { + stdenv = gcc10Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc10Stdenv; }; + }; + linux_5_4_hardened = hardenedKernelFor kernels.linux_5_4 { + stdenv = gcc10Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc10Stdenv; }; + }; linux_5_10_hardened = hardenedKernelFor kernels.linux_5_10 { }; linux_5_15_hardened = hardenedKernelFor kernels.linux_5_15 { }; linux_6_1_hardened = hardenedKernelFor kernels.linux_6_1 { }; @@ -606,23 +615,14 @@ in { linux_testing = packagesFor kernels.linux_testing; linux_testing_bcachefs = recurseIntoAttrs (packagesFor kernels.linux_testing_bcachefs); - linux_hardened = recurseIntoAttrs (hardenedPackagesFor packageAliases.linux_default.kernel { }); + linux_hardened = recurseIntoAttrs (packagesFor kernels.linux_hardened); - linux_4_14_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_4_14 { - stdenv = gcc10Stdenv; - buildPackages = buildPackages // { stdenv = buildPackages.gcc10Stdenv; }; - }); - linux_4_19_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_4_19 { - stdenv = gcc10Stdenv; - buildPackages = buildPackages // { stdenv = buildPackages.gcc10Stdenv; }; - }); - linux_5_4_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_5_4 { - stdenv = gcc10Stdenv; - buildPackages = buildPackages // { stdenv = buildPackages.gcc10Stdenv; }; - }); - linux_5_10_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_5_10 { }); - linux_5_15_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_5_15 { }); - linux_6_1_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_6_1 { }); + linux_4_14_hardened = recurseIntoAttrs (packagesFor kernels.linux_4_14_hardened); + linux_4_19_hardened = recurseIntoAttrs (packagesFor kernels.linux_4_19_hardened); + linux_5_4_hardened = recurseIntoAttrs (packagesFor kernels.linux_5_4_hardened); + linux_5_10_hardened = recurseIntoAttrs (packagesFor kernels.linux_5_10_hardened); + linux_5_15_hardened = recurseIntoAttrs (packagesFor kernels.linux_5_15_hardened); + linux_6_1_hardened = recurseIntoAttrs (packagesFor kernels.linux_6_1_hardened); linux_6_3_hardened = recurseIntoAttrs (packagesFor kernels.linux_6_3_hardened); linux_zen = recurseIntoAttrs (packagesFor kernels.linux_zen);