Re: [PATCH] crypto: aes - make assembler implementation default for i386 and x86-64
From: Jussi Kivilinna <hidden>
Date: 2012-06-12 18:25:24
Also in:
lkml
Quoting Herbert Xu [off-list ref]:
On Sat, Jun 09, 2012 at 05:50:55PM +0300, Jussi Kivilinna wrote:quoted
AES is often built-in and therefore implementations other than aes-generic don't get autoloaded by module-aliases. This is solved for aes-ni by cpuid autoloading, but for x86-64/i586 assembler implementation cpuid matching does not make much sense (aes-generic built-in but overridden by x86-64/i586 assembler implementation module). Instead change Kconfig so that assembler implementation is default on x86-64 and i386. This patch also splits common parts exported to assembler implementations from aes-generic to new module aes-common. Patch tested on x86-64, compile tested on i386 and arm. Signed-off-by: Jussi Kivilinna <redacted>I like the idea but I'm not sure about where we draw the line. E.g., why not enable padlock, or for that matter every single hardware implementation of AES? This can get unwieldy very quickly.
Well, how about letting arch specific assembler implementations replace aes-generic completely.. in this case add "depends on !X86" on CRYPTO_AES_GENERIC. Hardware modules get autoloaded (cpuid/pci/platform/etc) but generic assembler implementation might as well be replacement as it cannot autoload depending on hardware support (or it can, but will be always loaded). -Jussi