1
linux/arch/m68k
Benjamin Herrenschmidt 9e1b32caa5 mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()
mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

Upcoming paches to support the new 64-bit "BookE" powerpc architecture
will need to have the virtual address corresponding to PTE page when
freeing it, due to the way the HW table walker works.

Basically, the TLB can be loaded with "large" pages that cover the whole
virtual space (well, sort-of, half of it actually) represented by a PTE
page, and which contain an "indirect" bit indicating that this TLB entry
RPN points to an array of PTEs from which the TLB can then create direct
entries. Thus, in order to invalidate those when PTE pages are deleted,
we need the virtual address to pass to tlbilx or tlbivax instructions.

The old trick of sticking it somewhere in the PTE page struct page sucks
too much, the address is almost readily available in all call sites and
almost everybody implemets these as macros, so we may as well add the
argument everywhere. I added it to the pmd and pud variants for consistency.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: David Howells <dhowells@redhat.com> [MN10300 & FRV]
Acked-by: Nick Piggin <npiggin@suse.de>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> [s390]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-07-27 12:10:38 -07:00
..
amiga m68k: amiga core - Kill warn_unused_result warnings 2009-01-12 20:56:35 +01:00
apollo m68k: apollo core - Kill warn_unused_result warnings 2009-01-12 20:56:35 +01:00
atari m68k: atari - Rename "mfp" to "st_mfp" 2009-02-22 09:23:02 -08:00
bvme6000 m68k: Kill several external declarations in source files 2009-01-12 20:56:34 +01:00
configs m68k: Update defconfigs for 2.6.30-rc3 2009-04-22 20:55:12 +02:00
fpsp040 m68k: fix trigraph ignored warning in setox.S 2008-12-28 20:00:05 +01:00
hp300 m68k: hp300 core - Kill warn_unused_result warnings 2009-01-12 20:56:36 +01:00
ifpsp060
include/asm mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
kernel ptrace: remove PT_DTRACE from m68k, m68knommu 2009-06-18 13:03:48 -07:00
lib
mac m68k: mac - Add SWIM floppy support 2009-03-26 21:15:27 +01:00
math-emu m68k: Kill several external declarations in source files 2009-01-12 20:56:34 +01:00
mm Move FAULT_FLAG_xyz into handle_mm_fault() callers 2009-06-21 13:08:22 -07:00
mvme16x m68k: Kill several external declarations in source files 2009-01-12 20:56:34 +01:00
mvme147 m68k: mvme147 core - Kill warn_unused_result warnings 2009-01-12 20:56:37 +01:00
q40 m68k: Kill several external declarations in source files 2009-01-12 20:56:34 +01:00
sun3 m68k: sun3 core - Kill warn_unused_result warnings 2009-01-12 20:56:38 +01:00
sun3x m68k: Kill several external declarations in source files 2009-01-12 20:56:34 +01:00
tools/amiga
install.sh m68k: Add install target 2009-03-26 21:15:26 +01:00
Kconfig trivial: fix then -> than typos in comments and documentation 2009-01-06 11:28:06 +01:00
Kconfig.debug
Makefile m68k: Add install target 2009-03-26 21:15:26 +01:00