powerpc: Add a local_flush_tlb_page to handle kmap_atomic invalidates
authorKumar Gala <galak@kernel.crashing.org>
Wed, 19 Nov 2008 05:53:24 +0000 (05:53 +0000)
committerPaul Mackerras <paulus@samba.org>
Wed, 3 Dec 2008 09:46:35 +0000 (20:46 +1100)
commitdf3b8611554e389e703fa753540289874fa5126c
tree19b02efa50c28fbece905bd9fe2dc6c6ae6fcfd5
parentf4f3a1261ad70988ad45614ebc87e553143a332b
powerpc: Add a local_flush_tlb_page to handle kmap_atomic invalidates

The tlb invalidates in kmap_atomic/kunmap_atomic can be called from
IRQ context, however they are only local invalidates (on the processor
that the kmap was called on).  In the future we want to use IPIs to
do tlb invalidates this causes issue since flush_tlb_page() is considered
a broadcast invalidate.

Add local_flush_tlb_page() as a non-broadcast invalidate and use it in
kmap_atomic() since we don't have enough information in the
flush_tlb_page() call to determine its local.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/include/asm/highmem.h
arch/powerpc/include/asm/tlbflush.h