summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2007-02-13 13:26:23 +0100
committerAndi Kleen <andi@basil.nowhere.org>2007-02-13 13:26:23 +0100
commit8c40ad02e5b026902b8ce134f895b3b09803db39 (patch)
treef54320c2874e58d21c627063862af6953bf513e1
parent930f8b8bcde30b501fdf00fb7624aefb9bf35f47 (diff)
[PATCH] i386: Small cleanup to TLB flush code
- Remove outdated comment - Use cpu_relax() in a busy loop Signed-off-by: Andi Kleen <ak@suse.de>
-rw-r--r--arch/i386/kernel/smp.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/i386/kernel/smp.c b/arch/i386/kernel/smp.c
index ffc4f65c5189..9bd9637ae692 100644
--- a/arch/i386/kernel/smp.c
+++ b/arch/i386/kernel/smp.c
@@ -375,8 +375,7 @@ static void flush_tlb_others(cpumask_t cpumask, struct mm_struct *mm,
/*
* i'm not happy about this global shared spinlock in the
* MM hot path, but we'll see how contended it is.
- * Temporarily this turns IRQs off, so that lockups are
- * detected by the NMI watchdog.
+ * AK: x86-64 has a faster method that could be ported.
*/
spin_lock(&tlbstate_lock);
@@ -401,7 +400,7 @@ static void flush_tlb_others(cpumask_t cpumask, struct mm_struct *mm,
while (!cpus_empty(flush_cpumask))
/* nothing. lockup detection does not belong here */
- mb();
+ cpu_relax();
flush_mm = NULL;
flush_va = 0;