x86, MCE, AMD: Move invariant code out from loop body
authorChen Yucong <slaoub@gmail.com>
Thu, 2 Oct 2014 15:20:12 +0000 (23:20 +0800)
committerBorislav Petkov <bp@suse.de>
Tue, 21 Oct 2014 20:12:56 +0000 (22:12 +0200)
Assigning to mce_threshold_vector is loop-invariant code in
mce_amd_feature_init(). So do it only once, out of loop body.

Signed-off-by: Chen Yucong <slaoub@gmail.com>
Link: http://lkml.kernel.org/r/1412263212.8085.6.camel@debian
[ Boris: commit message corrections. ]
Signed-off-by: Borislav Petkov <bp@suse.de>
arch/x86/kernel/cpu/mcheck/mce_amd.c

index 9ce64955559dd5bdabd8331551aff5f8ad55a097..9af7bd74828b746b40d33ff7cafc71bf3e91b98e 100644 (file)
@@ -253,7 +253,9 @@ void mce_amd_feature_init(struct cpuinfo_x86 *c)
                        }
 
                        mce_threshold_block_init(&b, offset);
-                       mce_threshold_vector = amd_threshold_interrupt;
+
+                       if (mce_threshold_vector != amd_threshold_interrupt)
+                               mce_threshold_vector = amd_threshold_interrupt;
                }
        }
 }