summary refs log tree commit diff
path: root/pkgs/os-specific/linux/kernel/crc-regression.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/kernel/crc-regression.patch')
-rw-r--r--pkgs/os-specific/linux/kernel/crc-regression.patch24
1 files changed, 24 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/kernel/crc-regression.patch b/pkgs/os-specific/linux/kernel/crc-regression.patch
new file mode 100644
index 00000000000..623713d16a6
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/crc-regression.patch
@@ -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");