On Thu, May 29, 2025 at 05:37:02PM +0000, Eric Biggers wrote: > On Thu, May 29, 2025 at 11:05:26AM -0600, Alex Williamson wrote: > > On Mon, 28 Apr 2025 10:00:33 -0700 > > Eric Biggers <ebigg...@kernel.org> wrote: > > > > > From: Eric Biggers <ebigg...@google.com> > > > > > > Instead of providing crypto_shash algorithms for the arch-optimized > > > SHA-256 code, instead implement the SHA-256 library. This is much > > > simpler, it makes the SHA-256 library functions be arch-optimized, and > > > it fixes the longstanding issue where the arch-optimized SHA-256 was > > > disabled by default. SHA-256 still remains available through > > > crypto_shash, but individual architectures no longer need to handle it. > > > > I can get to the following error after this patch, now merged as commit > > b9eac03edcf8 ("crypto: s390/sha256 - implement library instead of shash"): > > > > error: the following would cause module name conflict: > > crypto/sha256.ko > > arch/s390/lib/crypto/sha256.ko > > Thanks for reporting this. For now the s390 one should be renamed to > sha256-s390, similar to how the other architectures' sha256 modules are named. > I'll send a patch. > > Long-term, I'd like to find a clean way to consolidate the library code for > each > algorithm into a single module. So instead of e.g. libsha256.ko, > libsha256-generic.ko, and sha256-s390.ko (all of which get loaded when the > SHA-256 library is needed), we'd just have libsha256.ko. (Or just sha256.ko, > with the old-school crypto API one renamed to sha256-cryptoapi.ko.) A lot of > these weird build problems we've been having are caused by the unnecessary > separation into multiple modules. > > - Eric >
Patch sent: https://lore.kernel.org/r/20250529185913.25091-1-ebigg...@kernel.org - Eric