Commit ab4a56fa authored by Borislav Petkov's avatar Borislav Petkov Committed by Ingo Molnar

x86/cpufeature: Remove cpu_has_osxsave

Use boot_cpu_has() instead.
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-crypto@vger.kernel.org
Link: http://lkml.kernel.org/r/1459266123-21878-4-git-send-email-bp@alien8.deSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 0c9f3536
...@@ -562,7 +562,8 @@ static int __init camellia_aesni_init(void) ...@@ -562,7 +562,8 @@ static int __init camellia_aesni_init(void)
{ {
const char *feature_name; const char *feature_name;
if (!cpu_has_avx2 || !cpu_has_avx || !cpu_has_aes || !cpu_has_osxsave) { if (!cpu_has_avx2 || !cpu_has_avx || !cpu_has_aes ||
!boot_cpu_has(X86_FEATURE_OSXSAVE)) {
pr_info("AVX2 or AES-NI instructions are not detected.\n"); pr_info("AVX2 or AES-NI instructions are not detected.\n");
return -ENODEV; return -ENODEV;
} }
......
...@@ -554,7 +554,7 @@ static int __init camellia_aesni_init(void) ...@@ -554,7 +554,7 @@ static int __init camellia_aesni_init(void)
{ {
const char *feature_name; const char *feature_name;
if (!cpu_has_avx || !cpu_has_aes || !cpu_has_osxsave) { if (!cpu_has_avx || !cpu_has_aes || !boot_cpu_has(X86_FEATURE_OSXSAVE)) {
pr_info("AVX or AES-NI instructions are not detected.\n"); pr_info("AVX or AES-NI instructions are not detected.\n");
return -ENODEV; return -ENODEV;
} }
......
...@@ -538,7 +538,7 @@ static int __init init(void) ...@@ -538,7 +538,7 @@ static int __init init(void)
{ {
const char *feature_name; const char *feature_name;
if (!cpu_has_avx2 || !cpu_has_osxsave) { if (!cpu_has_avx2 || !boot_cpu_has(X86_FEATURE_OSXSAVE)) {
pr_info("AVX2 instructions are not detected.\n"); pr_info("AVX2 instructions are not detected.\n");
return -ENODEV; return -ENODEV;
} }
......
...@@ -135,7 +135,6 @@ extern const char * const x86_bug_flags[NBUGINTS*32]; ...@@ -135,7 +135,6 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
#define cpu_has_x2apic boot_cpu_has(X86_FEATURE_X2APIC) #define cpu_has_x2apic boot_cpu_has(X86_FEATURE_X2APIC)
#define cpu_has_xsave boot_cpu_has(X86_FEATURE_XSAVE) #define cpu_has_xsave boot_cpu_has(X86_FEATURE_XSAVE)
#define cpu_has_xsaves boot_cpu_has(X86_FEATURE_XSAVES) #define cpu_has_xsaves boot_cpu_has(X86_FEATURE_XSAVES)
#define cpu_has_osxsave boot_cpu_has(X86_FEATURE_OSXSAVE)
/* /*
* Do not add any more of those clumsy macros - use static_cpu_has() for * Do not add any more of those clumsy macros - use static_cpu_has() for
* fast paths and boot_cpu_has() otherwise! * fast paths and boot_cpu_has() otherwise!
......
...@@ -167,12 +167,12 @@ static struct xor_block_template xor_block_avx = { ...@@ -167,12 +167,12 @@ static struct xor_block_template xor_block_avx = {
#define AVX_XOR_SPEED \ #define AVX_XOR_SPEED \
do { \ do { \
if (cpu_has_avx && cpu_has_osxsave) \ if (cpu_has_avx && boot_cpu_has(X86_FEATURE_OSXSAVE)) \
xor_speed(&xor_block_avx); \ xor_speed(&xor_block_avx); \
} while (0) } while (0)
#define AVX_SELECT(FASTEST) \ #define AVX_SELECT(FASTEST) \
(cpu_has_avx && cpu_has_osxsave ? &xor_block_avx : FASTEST) (cpu_has_avx && boot_cpu_has(X86_FEATURE_OSXSAVE) ? &xor_block_avx : FASTEST)
#else #else
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment