The function fpu__init_system() is executed before parse_early_param(). This causes wrong fpu configuration. In addition, there are three related issues:
1. XGETBV1 is enabled when noxsave is given 2. MPX is enabled when eagerfpu=off is given 3. AVX is enabled when eagerfpu=off is given Issues 1 and 3 are existing bugs. Issue 2 is a fallout from the command-line parsing move. The following four patches fix these issues. yu-cheng yu (4): x86/fpu: Fix early fpu command-line parsing. x86/fpu: Disable XGETBV1 when no XSAVE. x86/fpu: Disable MPX when eagerfpu is off. x86/fpu: Disable AVX when eagerfpu is off. arch/x86/include/asm/fpu/internal.h | 1 + arch/x86/include/asm/fpu/xstate.h | 11 +-- arch/x86/kernel/fpu/init.c | 161 +++++++++++++++++++----------------- arch/x86/kernel/fpu/xstate.c | 4 +- 4 files changed, 92 insertions(+), 85 deletions(-) Signed-off-by: Yu-cheng Yu <[email protected]> Cc: [email protected] Cc: H. Peter Anvin <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Sai Praneeth Prakhya <[email protected]> Cc: Ravi V. Shankar <[email protected]> Cc: Fenghua Yu <[email protected]> -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

