diff options
author | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-01-23 15:14:45 +0000 |
---|---|---|
committer | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-01-23 15:14:45 +0000 |
commit | 49964796c7682fbc937b43ee374defb94a41b101 (patch) | |
tree | 74663931efb322c0ee010e25469100970fc9c759 /xen/arch/x86/smp.c | |
parent | 7bd46b4635d552481f74cc159d3cae1b3151beec (diff) | |
download | xen-49964796c7682fbc937b43ee374defb94a41b101.tar.gz xen-49964796c7682fbc937b43ee374defb94a41b101.tar.bz2 xen-49964796c7682fbc937b43ee374defb94a41b101.zip |
x86: flush_tlb_mask() should take into account specified VA to flush
on local processor.
Signed-off-by: K. Y. Srinivasan <ksrinivasan@novell.com>
Diffstat (limited to 'xen/arch/x86/smp.c')
-rw-r--r-- | xen/arch/x86/smp.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/xen/arch/x86/smp.c b/xen/arch/x86/smp.c index 2d14240039..cc6739abea 100644 --- a/xen/arch/x86/smp.c +++ b/xen/arch/x86/smp.c @@ -188,7 +188,10 @@ void __flush_tlb_mask(cpumask_t mask, unsigned long va) if ( cpu_isset(smp_processor_id(), mask) ) { - local_flush_tlb(); + if ( va == FLUSHVA_ALL ) + local_flush_tlb(); + else + local_flush_tlb_one(va); cpu_clear(smp_processor_id(), mask); } |