Skip to contentSkip to conversation

Revert "crypto: crc32 - remove "_generic" from filenames"

PATCH In review Arnd Bergmann 2 participants 2 messages Apr 28, 2025 Crypto API

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Revert "crypto: crc32 - remove "_generic" from filenames"

From: Arnd Bergmann <[email protected]>

Each loadable module in the kernel must have a unique name, so renaming the crc32 crypto module made it conflict with the crc32 library, as shown by the build failure:

error: the following would cause module name conflict:
crypto/crc32.ko
lib/crc32.ko

This could be solved by renaming one of the two conflicting modules to something else again. As I can't think of a better name, just revert back to the previous state as the easiest fix.

Fixes ce653e0a7e0a ("crypto: crc32 - remove "_generic" from filenames")
---
 crypto/Makefile                       | 8 ++++----
 crypto/{crc32.c => crc32_generic.c}   | 0
 crypto/{crc32c.c => crc32c_generic.c} | 0
 3 files changed, 4 insertions(+), 4 deletions(-)
 rename crypto/{crc32.c => crc32_generic.c} (100%)
 rename crypto/{crc32c.c => crc32c_generic.c} (100%)
crypto/Makefile +4 -4
index f238281b16c0..5d2f2a28d8a0 100644
@@ -153,10 +153,10 @@ obj-$(CONFIG_CRYPTO_POLY1305) += poly1305.o
 CFLAGS_poly1305.o += -DARCH=$(ARCH)
 obj-$(CONFIG_CRYPTO_DEFLATE) += deflate.o
 obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o
-obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
-obj-$(CONFIG_CRYPTO_CRC32) += crc32.o
-CFLAGS_crc32c.o += -DARCH=$(ARCH)
-CFLAGS_crc32.o += -DARCH=$(ARCH)
+obj-$(CONFIG_CRYPTO_CRC32C) += crc32c_generic.o
+obj-$(CONFIG_CRYPTO_CRC32) += crc32_generic.o
+CFLAGS_crc32c_generic.o += -DARCH=$(ARCH)
+CFLAGS_crc32_generic.o += -DARCH=$(ARCH)
 obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o authencesn.o
 obj-$(CONFIG_CRYPTO_KRB5ENC) += krb5enc.o
 obj-$(CONFIG_CRYPTO_LZO) += lzo.o lzo-rle.o
crypto/crc32_generic.c renamed from crypto/crc32.c +0 -0
similarity index 100%
rename from crypto/crc32.c
rename to crypto/crc32_generic.c
crypto/crc32c_generic.c renamed from crypto/crc32c.c +0 -0
similarity index 100%
rename from crypto/crc32c.c
rename to crypto/crc32c_generic.c
Signature · 1 line
2.39.5
#1 lore raw
Quoted 16 lines · Arnd Bergmann

From: Arnd Bergmann <[email protected]>

Each loadable module in the kernel must have a unique name, so renaming the crc32 crypto module made it conflict with the crc32 library, as shown by the build failure:

error: the following would cause module name conflict:

   crypto/crc32.ko
   lib/crc32.ko

This could be solved by renaming one of the two conflicting modules to something else again. As I can't think of a better name, just revert back to the previous state as the easiest fix.

Fixes ce653e0a7e0a ("crypto: crc32 - remove "_generic" from filenames")
Quoted 7 lines
---
 crypto/Makefile                       | 8 ++++----
 crypto/{crc32.c => crc32_generic.c}   | 0
 crypto/{crc32c.c => crc32c_generic.c} | 0
 3 files changed, 4 insertions(+), 4 deletions(-)
 rename crypto/{crc32.c => crc32_generic.c} (100%)
 rename crypto/{crc32c.c => crc32c_generic.c} (100%)

Dropped the patch, thanks.

lib/crypto/ uses a lib prefix on the lib modules. We could follow that and do libcrc32 and crc32. I think that's a mistake though; nothing else in lib/ does that, and it would imply that the Crypto API wrapper for crc32 is the "regular" CRC-32 module and that the lib module is something special. It's actually the other way around. So I'll propose crc32 and crc32-cryptoapi.

- Eric