Suresh Siddha
ce4e240c27
x86: add x2apic_wrmsr_fence() to x2apic flush tlb paths
...
Impact: optimize APIC IPI related barriers
Uncached MMIO accesses for xapic are inherently serializing and hence
we don't need explicit barriers for xapic IPI paths.
x2apic MSR writes/reads don't have serializing semantics and hence need
a serializing instruction or mfence, to make all the previous memory
stores globally visisble before the x2apic msr write for IPI.
Add x2apic_wrmsr_fence() in flush tlb path to x2apic specific paths.
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com >
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl >
Cc: Oleg Nesterov <oleg@redhat.com >
Cc: Jens Axboe <jens.axboe@oracle.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com >
Cc: Rusty Russell <rusty@rustcorp.com.au >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: "steiner@sgi.com " <steiner@sgi.com >
Cc: Nick Piggin <npiggin@suse.de >
LKML-Reference: <1237313814.27006.203.camel@localhost.localdomain >
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2009-03-18 09:36:14 +01:00
Ingo Molnar
e641f5f525
x86, apic: remove duplicate asm/apic.h inclusions
...
Impact: cleanup
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2009-02-17 17:52:44 +01:00
Ingo Molnar
7b6aa335ca
x86, apic: remove genapic.h
...
Impact: cleanup
Remove genapic.h and remove all references to it.
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2009-02-17 17:52:44 +01:00
Ingo Molnar
d53e2f2855
x86, smp: remove mach_ipi.h
...
Move mach_ipi.h definitions into genapic.h.
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2009-01-29 14:16:49 +01:00
Ingo Molnar
dac5f4121d
x86, apic: untangle the send_IPI_*() jungle
...
Our send_IPI_*() methods and definitions are a twisted mess: the same
symbol is defined to different things depending on .config details,
in a non-transparent way.
- spread out the quirks into separately named per apic driver methods
- prefix the standard PC methods with default_
- get rid of wrapper macro obfuscation
- clean up various details
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2009-01-28 23:20:31 +01:00
Ingo Molnar
198030782c
Merge branch 'x86/mm' into core/percpu
...
Conflicts:
arch/x86/mm/fault.c
2009-01-21 10:39:51 +01:00
Ingo Molnar
55f4949f57
x86, mm: move tlb.c to arch/x86/mm/
...
Impact: cleanup
Now that it's unified, move the (SMP) TLB flushing code from arch/x86/kernel/
to arch/x86/mm/, where it belongs logically.
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2009-01-21 10:16:19 +01:00