x86/fpu: Configure init_fpstate attributes orderly
[linux-2.6-microblaze.git] / arch / x86 / kernel / fpu / xstate.c
index c834015..f0ce106 100644 (file)
@@ -360,7 +360,7 @@ static void __init setup_init_fpu_buf(void)
 
        print_xstate_features();
 
-       xstate_init_xcomp_bv(&init_fpstate.regs.xsave, fpu_kernel_cfg.max_features);
+       xstate_init_xcomp_bv(&init_fpstate.regs.xsave, init_fpstate.xfeatures);
 
        /*
         * Init all the features state with header.xfeatures being 0x0
@@ -875,6 +875,10 @@ void __init fpu__init_system_xstate(unsigned int legacy_size)
        update_regset_xstate_info(fpu_user_cfg.max_size,
                                  fpu_user_cfg.max_features);
 
+       /* Bring init_fpstate size and features up to date */
+       init_fpstate.size               = fpu_kernel_cfg.max_size;
+       init_fpstate.xfeatures          = fpu_kernel_cfg.max_features;
+
        setup_init_fpu_buf();
 
        /*