linux_old1/arch/sh/include/asm
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
..
.gitignore sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
Kbuild byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
adc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
addrspace.h sh: Support fixed 32-bit PMB mappings from bootloader. 2009-03-10 15:49:54 +09:00
atomic-grb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
atomic-irq.h sh: Make the atomic functions safe for irqsoff tracing 2009-06-15 00:31:17 +09:00
atomic-llsc.h sh: Fix sh4a llsc-based cmpxchg() 2009-06-11 09:31:55 +03:00
atomic.h sh: Use generic atomic64_t implementation. 2009-06-17 10:43:13 +09:00
auxvec.h sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h. 2008-07-29 23:12:25 +09:00
bitops-grb.h sh: Convert to generic bitops for IRQ-toggling implementation. 2008-12-22 18:42:53 +09:00
bitops-llsc.h sh: Relax inline assembly constraints 2009-01-29 11:57:09 +09:00
bitops-op32.h sh: Provide optimized non-atomic bitops for SH-2A. 2008-12-22 18:42:54 +09:00
bitops.h sh: Provide optimized non-atomic bitops for SH-2A. 2008-12-22 18:42:54 +09:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
bugs.h sh: Add support for SH7201 CPU subtype. 2008-12-22 18:43:50 +09:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cacheflush.h sh: Handle shm_align_mask also for HAVE_ARCH_UNMAPPED_AREA_TOPDOWN. 2009-05-07 16:38:16 +09:00
checksum.h sh: Convert sh64 to use the generic checksum code. 2009-06-15 00:00:42 +09:00
checksum_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
clock.h sh: add enable()/disable()/set_rate() to div6 code 2009-06-11 09:12:58 +03:00
cmpxchg-grb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cmpxchg-irq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cmpxchg-llsc.h sh: Fix sh4a llsc-based cmpxchg() 2009-06-11 09:31:55 +03:00
cpu-features.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
cputime.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
current.h sh: Convert to asm-generic/current.h. 2009-06-14 21:34:26 +09:00
delay.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
device.h sh: Add plat_early_device_setup() 2009-04-19 13:06:25 +09:00
div64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
dma-mapping.h sh: Fix up more dma-mapping fallout. 2009-06-23 17:36:23 +09:00
dma-sh.h sh: Revert CONFIG_NR_ONCHIP_DMA_CHANNELS to MAX_DMA_CHANNELS 2009-03-16 19:43:08 +09:00
dma.h sh: Convert to asm-generic/dma.h. 2009-06-14 21:45:06 +09:00
dmabrg.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
elf.h Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2008-12-28 12:33:21 -08:00
emergency-restart.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
entry-macros.S sh: prefetch early exception data on sh4/sh4a. 2009-02-27 16:41:17 +09:00
errno.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fcntl.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fixmap.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
flat.h flat: fix data sections alignment 2009-05-29 08:40:02 -07:00
fpu.h sh: Add FPU registers to regset interface. 2008-09-21 19:04:55 +09:00
freq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ftrace.h sh: Provide a dyn_arch_ftrace struct definition. 2008-12-22 18:43:50 +09:00
futex-irq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
futex.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
gpio.h sh: use gpiolib 2009-01-27 14:49:10 +09:00
hardirq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hd64461.h sh: mach-hp6xx: Fix up the hp6xx build for hd64461 changes. 2009-05-20 11:27:13 +09:00
heartbeat.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hugetlb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hw_irq.h sh: Move the shared INTC code out to drivers/sh/ 2008-10-01 16:13:54 +09:00
i2c-sh7760.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ilsel.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
io.h sh: Provide __read_{read,write}sl() definitions for sh64. 2009-05-09 14:44:30 +09:00
io_generic.h sh: More I/O routine overhauling. 2008-10-04 05:25:52 +09:00
io_trapped.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ioctl.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ioctls.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ipcbuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
irq.h sh: Tidy up duplication in irq/swab/timex.h. 2009-06-14 23:21:54 +09:00
irq_regs.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
kdebug.h sh: Wire up oops reporting in the die notifier chain. 2008-10-21 18:33:36 +09:00
kexec.h kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE 2008-08-15 08:35:42 -07:00
kgdb.h sh: Generic kgdb stub support. 2008-12-22 18:44:04 +09:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
kprobes.h sh: Rename opcode_t to insn_size_t. 2009-05-09 16:02:08 +09:00
linkage.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
local.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
machvec.h sh: boot word / mode pin support V2 2009-06-01 15:44:49 +09:00
mc146818rtc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mman.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
mmu.h sh: Sanitize asm/mmu.h for assembly use. 2009-03-31 07:42:37 +09:00
mmu_context.h sh: Conver to asm-generic/mmu_context.h. 2009-06-14 23:23:41 +09:00
mmu_context_32.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
mmu_context_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mmzone.h sh: Fix up NUMA build error with se7722_defconfig. 2008-09-12 22:41:30 +09:00
module.h sh: Convert to asm-generic/module.h. 2009-06-14 23:24:14 +09:00
msgbuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
mutex-llsc.h sh: Fix up T-bit error handling in SH-4A mutex fastpath. 2009-01-29 11:56:03 +09:00
mutex.h sh: Add SH-4A optimized fastpath mutex implementation. 2008-12-22 18:42:55 +09:00
page.h asm-generic: rename page.h and uaccess.h 2009-06-11 21:02:17 +02:00
param.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
parport.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
pci.h Delete pcibios_select_root 2009-06-17 14:04:42 -07:00
percpu.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
perf_counter.h sh: define PERF_COUNTER_INDEX_OFFSET. 2009-07-03 13:08:28 +09:00
pgalloc.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
pgtable.h sh: Handle shm_align_mask also for HAVE_ARCH_UNMAPPED_AREA_TOPDOWN. 2009-05-07 16:38:16 +09:00
pgtable_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
pgtable_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
poll.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
posix_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
posix_types_32.h sh: Convert to asm-generic/posix_types.h. 2009-06-14 23:16:27 +09:00
posix_types_64.h sh: Convert to asm-generic/posix_types.h. 2009-06-14 23:16:27 +09:00
processor.h sh: rework mode pin code 2009-06-11 09:08:53 +03:00
processor_32.h sh: Fix up DSP context save/restore. 2009-04-04 11:48:11 -04:00
processor_64.h SH: fix start_thread and user_stack_pointer macros 2009-01-29 15:41:15 +09:00
ptrace.h sh: Add in some ptrace definitions from GDB. 2009-05-09 00:06:03 +09:00
push-switch.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
resource.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
rtc.h sh: rtc-generic support. 2009-04-27 17:34:39 +09:00
rwsem.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
scatterlist.h sh: Convert to asm-generic/scatterlist.h. 2009-06-14 23:25:04 +09:00
seccomp.h sh: seccomp support. 2008-08-02 04:39:32 +09:00
sections.h sh: hibernation support 2009-03-10 12:55:40 +09:00
segment.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sembuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
serial.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
setup.h sh: Derive COMMAND_LINE_SIZE from asm-generic/setup.h. 2009-06-14 23:27:41 +09:00
sfp-machine.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sh7760fb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sh_bios.h sh: Kill off sh_bios_in_gdb_mode(). 2008-12-22 18:44:44 +09:00
sh_eth.h [netdrvr] sh_eth: Add SH7619 support 2008-08-07 02:20:57 -04:00
sh_keysc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
shmbuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
shmparam.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sigcontext.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
siginfo.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
signal.h sh: Convert to asm-generic/signal.h. 2009-06-14 23:25:57 +09:00
sizes.h sh: Add a few more definitions to asm/sizes.h. 2008-09-21 10:31:57 +09:00
smc37c93x.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
smp.h cpumask: arch_send_call_function_ipi_mask: sh 2009-06-14 18:24:14 +09:00
socket.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
sockios.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sparsemem.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spi.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spinlock.h sh: Fix sh4a llsc-based cmpxchg() 2009-06-11 09:31:55 +03:00
spinlock_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
stat.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
statfs.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string_64.h sh: Add SH-5 optimized memcpy()/memset()/strcpy()/strlen(). 2008-12-22 18:44:05 +09:00
suspend.h sh: SuperH Mobile suspend support 2009-03-16 19:52:53 +09:00
swab.h sh: Tidy up duplication in irq/swab/timex.h. 2009-06-14 23:21:54 +09:00
syscall.h sh: Provide the asm/syscall.h interface, needed by tracehook. 2008-09-12 22:13:13 +09:00
syscall_32.h sh: Fix compiler error and include the definition of IS_ERR_VALUE 2009-07-02 03:32:48 +09:00
syscall_64.h sh: Fix up spurious syscall restarting. 2009-01-29 11:56:03 +09:00
syscalls.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
syscalls_32.h [CVE-2009-0029] Remove __attribute__((weak)) from sys_pipe/sys_pipe2 2009-01-14 14:15:15 +01:00
syscalls_64.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
system.h sh: Provide cpu_idle_wait() to fix up cpuidle/SMP build. 2009-06-23 17:30:17 +09:00
system_32.h sh: Rename opcode_t to insn_size_t. 2009-05-09 16:02:08 +09:00
system_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
termbits.h sh: Convert to asm-generic/termbits.h and termios.h. 2009-06-14 23:17:57 +09:00
termios.h sh: Convert to asm-generic/termbits.h and termios.h. 2009-06-14 23:17:57 +09:00
thread_info.h sched: INIT_PREEMPT_COUNT 2009-07-10 14:24:05 -07:00
timex.h sh: Tidy up duplication in irq/swab/timex.h. 2009-06-14 23:21:54 +09:00
tlb.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
tlb_64.h sh: Fix up broken kerneldoc comments. 2008-08-04 12:51:06 +09:00
tlbflush.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
topology.h cpumask: remove the now-obsoleted pcibus_to_cpumask(): sh 2009-06-14 18:24:13 +09:00
types.h sh: Convert to asm-generic/types.h. 2009-06-14 23:25:27 +09:00
uaccess.h sh: Proper __put_user_asm() size mismatch fix. 2008-07-29 09:16:33 +09:00
uaccess_32.h sh: Proper __put_user_asm() size mismatch fix. 2008-07-29 09:16:33 +09:00
uaccess_64.h sh: sh_ksyms_64 needs __strncpy_from_user() definition. 2008-09-29 19:45:16 +09:00
ubc.h sh: Fix UBC setup and registers for SH2A 2009-05-09 00:09:21 +09:00
ucontext.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
unaligned-sh4a.h sh: 16-bit get_unaligned() sh4a fix 2009-06-04 20:20:24 +09:00
unaligned.h sh: Convert to asm-generic/unaligned.h. 2009-06-14 23:24:43 +09:00
unistd.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
unistd_32.h sh: Wire up sys_perf_counter_open. 2009-06-12 01:33:22 +03:00
unistd_64.h sh: Wire up sys_perf_counter_open. 2009-06-12 01:33:22 +03:00
user.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
vga.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
watchdog.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
xor.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00