linux/arch/ppc/kernel
Benjamin Herrenschmidt e701d269aa [POWERPC] 4xx: Fix 4xx flush_tlb_page()
On 4xx CPUs, the current implementation of flush_tlb_page() uses
a low level _tlbie() assembly function that only works for the
current PID. Thus, invalidations caused by, for example, a COW
fault triggered by get_user_pages() from a different context will
not work properly, causing among other things, gdb breakpoints
to fail.

This patch adds a "pid" argument to _tlbie() on 4xx processors,
and uses it to flush entries in the right context. FSL BookE
also gets the argument but it seems they don't need it (their
tlbivax form ignores the PID when invalidating according to the
document I have).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2007-11-01 07:15:09 -05:00
..
asm-offsets.c rename thread_info to stack 2007-05-09 12:30:56 -07:00
cpu_setup_power4.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
entry.S [PPC] Fix COMMON symbol warnings 2007-05-23 00:17:44 -05:00
head_4xx.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
head_8xx.S [PPC] 8xx: Fix r3 trashing due to 8MB TLB page instantiation 2007-09-10 16:01:22 -05:00
head_44x.S [PPC] Use cpu setup routines from cpu_setup_44x.S for ARCH=ppc 2007-10-04 11:02:09 +10:00
head_booke.h [PATCH] ppc32: fix ppc44x fpu build 2005-11-10 11:24:06 +11:00
head_fsl_booke.S [POWERPC] 85xx: Drop use of SYNC macro in head_fsl_booke.S 2007-02-13 16:13:27 -06:00
head.S [POWERPC] Remove APUS support from arch/ppc 2007-09-17 15:15:04 +10:00
machine_kexec.c Storage class should be first 2006-06-26 18:57:34 +02:00
Makefile [POWERPC] 8xx: generic 8xx code arch/powerpc port 2007-02-07 14:01:02 +11:00
misc.S [POWERPC] 4xx: Fix 4xx flush_tlb_page() 2007-11-01 07:15:09 -05:00
pci.c PCI: Use a weak symbol for the empty version of pcibios_add_platform_entries() 2007-07-11 16:02:07 -07:00
ppc_htab.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
ppc_ksyms.c [POWERPC] Remove APUS support from arch/ppc 2007-09-17 15:15:04 +10:00
ppc-stub.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
relocate_kernel.S [PATCH] ppc32: use correct register names in arch/ppc/kernel/relocate_kernel.S 2005-06-30 08:45:09 -07:00
rio.c [PATCH] RapidIO support: ppc32 2005-11-07 07:53:47 -08:00
semaphore.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
setup.c [POWERPC] Remove APUS support from arch/ppc 2007-09-17 15:15:04 +10:00
smp-tbsync.c [POWERPC] Fix irq enable/disable in smp_generic_take_timebase 2006-08-30 16:10:47 +10:00
smp.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
softemu8xx.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
time.c [POWERPC] ppc: Add missing calls to set_irq_regs 2006-10-16 15:52:14 +10:00
traps.c pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
vmlinux.lds.S [POWERPC] Fix ppc kernels after build-id addition 2007-09-22 14:49:21 +10:00