On Fri, Sep 15, 2023 at 12:23:25PM +0200, Roxana Nicolescu wrote: > x86 optimized crypto modules are built as modules rather than build-in and > they are not loaded when the crypto API is initialized, resulting in the > generic builtin module (sha1-generic) being used instead. > > It was discovered when creating a sha1/sha256 checksum of a 2Gb file by > using kcapi-tools because it would take significantly longer than creating > a sha512 checksum of the same file. trace-cmd showed that for sha1/256 the > generic module was used, whereas for sha512 the optimized module was used > instead. > > Add module aliases() for these x86 optimized crypto modules based on CPU > feature bits so udev gets a chance to load them later in the boot > process. This resulted in ~3x decrease in the real-time execution of > kcapi-dsg. > > Fix is inspired from commit > aa031b8f702e ("crypto: x86/sha512 - load based on CPU features") > where a similar fix was done for sha512. > > Cc: stable@xxxxxxxxxxxxxxx # 5.15+ > Suggested-by: Dimitri John Ledkov <dimitri.ledkov@xxxxxxxxxxxxx> > Suggested-by: Julian Andres Klode <julian.klode@xxxxxxxxxxxxx> > Signed-off-by: Roxana Nicolescu <roxana.nicolescu@xxxxxxxxxxxxx> > --- > arch/x86/crypto/sha1_ssse3_glue.c | 12 ++++++++++++ > arch/x86/crypto/sha256_ssse3_glue.c | 12 ++++++++++++ > 2 files changed, 24 insertions(+) Patch applied. Thanks. -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt