forked from mirrors/nixpkgs
linux_3_{10,12,14}: fix upstream regression, fixes #6231
Some modules wouldn't load crc32c dependency due to module renaming.
This commit is contained in:
parent
12834a8500
commit
57f2d329ac
24
pkgs/os-specific/linux/kernel/crc-regression.patch
Normal file
24
pkgs/os-specific/linux/kernel/crc-regression.patch
Normal file
|
@ -0,0 +1,24 @@
|
|||
See https://github.com/NixOS/nixpkgs/issues/6231
|
||||
|
||||
v3.14.31:crypto/crc32c.c is missing the MODULE_ALIAS_CRYPTO("crc32c").
|
||||
That's probably because crypto/crc32c.c was renamed to
|
||||
crypto/crc32c_generic.c in commit
|
||||
06e5a1f29819759392239669beb2cad27059c8ec and therefore fell through
|
||||
the cracks when backporting commit
|
||||
5d26a105b5a73e5635eae0629b42fa0a90e07b7b.
|
||||
|
||||
So the affected kernels (all that backported the "crypto-" prefix
|
||||
patches) need this additional patch:
|
||||
|
||||
diff --git a/crypto/crc32c.c b/crypto/crc32c.c
|
||||
index 06f7018c9d95..aae5829eb681 100644
|
||||
--- a/crypto/crc32c.c
|
||||
+++ b/crypto/crc32c.c
|
||||
@@ -167,6 +167,7 @@ static void __exit crc32c_mod_fini(void)
|
||||
module_init(crc32c_mod_init);
|
||||
module_exit(crc32c_mod_fini);
|
||||
|
||||
+MODULE_ALIAS_CRYPTO("crc32c");
|
||||
MODULE_AUTHOR("Clay Haapala <chaapala@cisco.com>");
|
||||
MODULE_DESCRIPTION("CRC32c (Castagnoli) calculations wrapper for lib/crc32c");
|
||||
MODULE_LICENSE("GPL");
|
|
@ -82,4 +82,9 @@ rec {
|
|||
{ name = "grsec-fix-path";
|
||||
patch = ./grsec-path.patch;
|
||||
};
|
||||
|
||||
crc_regression =
|
||||
{ name = "crc-backport-regression";
|
||||
patch = ./crc-regression.patch;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -8623,7 +8623,7 @@ let
|
|||
|
||||
linux_3_10 = makeOverridable (import ../os-specific/linux/kernel/linux-3.10.nix) {
|
||||
inherit fetchurl stdenv perl buildLinux;
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper ]
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.crc_regression ]
|
||||
++ lib.optionals ((platform.kernelArch or null) == "mips")
|
||||
[ kernelPatches.mips_fpureg_emu
|
||||
kernelPatches.mips_fpu_sigill
|
||||
|
@ -8633,7 +8633,7 @@ let
|
|||
|
||||
linux_3_12 = makeOverridable (import ../os-specific/linux/kernel/linux-3.12.nix) {
|
||||
inherit fetchurl stdenv perl buildLinux;
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper ]
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.crc_regression ]
|
||||
++ lib.optionals ((platform.kernelArch or null) == "mips")
|
||||
[ kernelPatches.mips_fpureg_emu
|
||||
kernelPatches.mips_fpu_sigill
|
||||
|
@ -8643,7 +8643,7 @@ let
|
|||
|
||||
linux_3_14 = makeOverridable (import ../os-specific/linux/kernel/linux-3.14.nix) {
|
||||
inherit fetchurl stdenv perl buildLinux;
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper ]
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.crc_regression ]
|
||||
++ lib.optionals ((platform.kernelArch or null) == "mips")
|
||||
[ kernelPatches.mips_fpureg_emu
|
||||
kernelPatches.mips_fpu_sigill
|
||||
|
|
Loading…
Reference in a new issue