x86: remove extra barriers from load_gs_base()
Impact: optimization mb() generates an mfence instruction, which is not needed here. Only a compiler barrier is needed, and that is handled by the memory clobber in the wrmsrl function. Signed-off-by: Brian Gerst <brgerst@gmail.com> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
@@ -397,10 +397,7 @@ DECLARE_PER_CPU(char *, irq_stack_ptr);
|
|||||||
|
|
||||||
static inline void load_gs_base(int cpu)
|
static inline void load_gs_base(int cpu)
|
||||||
{
|
{
|
||||||
/* Memory clobbers used to order pda/percpu accesses */
|
|
||||||
mb();
|
|
||||||
wrmsrl(MSR_GS_BASE, (unsigned long)per_cpu(irq_stack_union.gs_base, cpu));
|
wrmsrl(MSR_GS_BASE, (unsigned long)per_cpu(irq_stack_union.gs_base, cpu));
|
||||||
mb();
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user