diff options
author | Eric Vannier <evannier@google.com> | 2018-03-22 21:32:56 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2018-03-27 13:50:09 +0200 |
commit | 77d88d75f6262a855e818a9b2b4018f8b6ced7b0 (patch) | |
tree | 0b64408fb3ee27e5fa79926820bdb417d584a5df /lib/crypto | |
parent | ce5116cfb3990de8a088012bee9fd9f94bd21c97 (diff) | |
download | samba-77d88d75f6262a855e818a9b2b4018f8b6ced7b0.tar.gz |
Allow AESNI to be used on all processor supporting AESNI, not just Intel's This improves performance/reduced CPU usage. Tests performed: - Ran on Ivy Bridge and Ryzen and verified that AESNI is detected (crypto tests) - Ran on Ryzen, and observed 50% increased speed.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13302
Signed-off-by: Eric Vannier <evannier@google.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Björn Jacke <bjacke@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Tue Mar 27 13:50:09 CEST 2018 on sn-devel-144
Diffstat (limited to 'lib/crypto')
-rw-r--r-- | lib/crypto/aes.c | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/lib/crypto/aes.c b/lib/crypto/aes.c index c226ac1b3df..d16d715482e 100644 --- a/lib/crypto/aes.c +++ b/lib/crypto/aes.c @@ -66,22 +66,6 @@ static bool has_intel_aes_instructions(void) return (bool)has_aes_instructions; } - __cpuid(cpuid_results, 0); - /* - * MSB LSB - * EBX = 'u' 'n' 'e' 'G' - * EDX = 'I' 'e' 'n' 'i' - * ECX = 'l' 'e' 't' 'n' - */ - if (memcmp((unsigned char *)&cpuid_results[1], "Genu", 4) != 0 || - memcmp((unsigned char *)&cpuid_results[3], - "ineI", 4) != 0 || - memcmp((unsigned char *)&cpuid_results[2], - "ntel", 4) != 0) { - has_aes_instructions = 0; - return (bool)has_aes_instructions; - } - __cpuid(cpuid_results, 1); has_aes_instructions = !!(cpuid_results[2] & (1 << 25)); return (bool)has_aes_instructions; |