Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

crypto: x86 - Remove CONFIG_AS_SHA256_NI

Current minimum required version of binutils is 2.25,
which supports SHA-256 instruction mnemonics.

Remove check for assembler support of SHA-256 instructions
and all relevant macros for conditional compilation.

No functional change intended.

Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Reviewed-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Uros Bizjak and committed by
Herbert Xu
d032a27e 984f8350

+1 -16
-4
arch/x86/Kconfig.assembler
··· 6 6 help 7 7 Supported by binutils >= 2.25 and LLVM integrated assembler 8 8 9 - config AS_SHA256_NI 10 - def_bool $(as-instr,sha256msg1 %xmm0$(comma)%xmm1) 11 - help 12 - Supported by binutils >= 2.24 and LLVM integrated assembler 13 9 config AS_TPAUSE 14 10 def_bool $(as-instr,tpause %ecx) 15 11 help
+1 -2
arch/x86/crypto/Makefile
··· 59 59 sha1-ssse3-y := sha1_avx2_x86_64_asm.o sha1_ssse3_asm.o sha1_ni_asm.o sha1_ssse3_glue.o 60 60 61 61 obj-$(CONFIG_CRYPTO_SHA256_SSSE3) += sha256-ssse3.o 62 - sha256-ssse3-y := sha256-ssse3-asm.o sha256-avx-asm.o sha256-avx2-asm.o sha256_ssse3_glue.o 63 - sha256-ssse3-$(CONFIG_AS_SHA256_NI) += sha256_ni_asm.o 62 + sha256-ssse3-y := sha256-ssse3-asm.o sha256-avx-asm.o sha256-avx2-asm.o sha256_ni_asm.o sha256_ssse3_glue.o 64 63 65 64 obj-$(CONFIG_CRYPTO_SHA512_SSSE3) += sha512-ssse3.o 66 65 sha512-ssse3-y := sha512-ssse3-asm.o sha512-avx-asm.o sha512-avx2-asm.o sha512_ssse3_glue.o
-10
arch/x86/crypto/sha256_ssse3_glue.c
··· 45 45 const u8 *data, int blocks); 46 46 47 47 static const struct x86_cpu_id module_cpu_ids[] = { 48 - #ifdef CONFIG_AS_SHA256_NI 49 48 X86_MATCH_FEATURE(X86_FEATURE_SHA_NI, NULL), 50 - #endif 51 49 X86_MATCH_FEATURE(X86_FEATURE_AVX2, NULL), 52 50 X86_MATCH_FEATURE(X86_FEATURE_AVX, NULL), 53 51 X86_MATCH_FEATURE(X86_FEATURE_SSSE3, NULL), ··· 327 329 ARRAY_SIZE(sha256_avx2_algs)); 328 330 } 329 331 330 - #ifdef CONFIG_AS_SHA256_NI 331 332 asmlinkage void sha256_ni_transform(struct sha256_state *digest, 332 333 const u8 *data, int rounds); 333 334 ··· 400 403 ARRAY_SIZE(sha256_ni_algs)); 401 404 } 402 405 403 - #else 404 - static inline int register_sha256_ni(void) { return 0; } 405 - static inline void unregister_sha256_ni(void) { } 406 - #endif 407 - 408 406 static int __init sha256_ssse3_mod_init(void) 409 407 { 410 408 if (!x86_match_cpu(module_cpu_ids)) ··· 453 461 MODULE_ALIAS_CRYPTO("sha224-ssse3"); 454 462 MODULE_ALIAS_CRYPTO("sha224-avx"); 455 463 MODULE_ALIAS_CRYPTO("sha224-avx2"); 456 - #ifdef CONFIG_AS_SHA256_NI 457 464 MODULE_ALIAS_CRYPTO("sha256-ni"); 458 465 MODULE_ALIAS_CRYPTO("sha224-ni"); 459 - #endif