Re: [patch] x86, avx: don't use avx instructions with "noxsave" boot param

From: H. Peter Anvin
Date: Tue Jul 31 2012 - 00:33:39 EST


I'm wondering if we shouldn't just kill the affected CPUID bits if osxsave is off...

NeilBrown <neilb@xxxxxxx> wrote:

>On Mon, 30 Jul 2012 15:46:15 -0700 Suresh Siddha
><suresh.b.siddha@xxxxxxxxx>
>wrote:
>
>> Check the kernel has indeed enabled xsave before using AVX
>instructions.
>>
>> Fixes the kernel boot panic with "noxsave" boot parameter.
>>
>> Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
>
>Looks consistent with other usage - thanks.
>Applied.
>
>Should it go in '-stable' kernels too?
>
>NeilBrown
>
>> ---
>> arch/x86/include/asm/xor_avx.h | 4 ++--
>> 1 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/x86/include/asm/xor_avx.h
>b/arch/x86/include/asm/xor_avx.h
>> index 2510d35..77987cd 100644
>> --- a/arch/x86/include/asm/xor_avx.h
>> +++ b/arch/x86/include/asm/xor_avx.h
>> @@ -197,12 +197,12 @@ static struct xor_block_template xor_block_avx
>= {
>>
>> #define AVX_XOR_SPEED \
>> do { \
>> - if (cpu_has_avx) \
>> + if (cpu_has_avx && cpu_has_osxsave) \
>> xor_speed(&xor_block_avx); \
>> } while (0)
>>
>> #define AVX_SELECT(FASTEST) \
>> - (cpu_has_avx ? &xor_block_avx : FASTEST)
>> + ((cpu_has_avx && cpu_has_osxsave) ? &xor_block_avx : FASTEST)
>>
>> #else
>>
>>

--
Sent from my mobile phone. Please excuse brevity and lack of formatting.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/