1
linux/arch/parisc/kernel
Helge Deller e82a3b7512 parisc: ensure broadcast tlb purge runs single threaded
The TLB flushing functions on hppa, which causes PxTLB broadcasts on the system
bus, needs to be protected by irq-safe spinlocks to avoid irq handlers to deadlock
the kernel. The deadlocks only happened during I/O intensive loads and triggered
pretty seldom, which is why this bug went so long unnoticed.

Signed-off-by: Helge Deller <deller@gmx.de>
[edited to use spin_lock_irqsave on UP as well since we'd been locking there
 all this time anyway, --kyle]
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
2009-07-03 03:34:09 +00:00
..
.gitignore parisc: add arch/parisc/kernel/.gitignore 2008-10-10 16:32:28 +00:00
asm-offsets.c parisc: move pdc_result to real2.S 2008-10-10 16:32:28 +00:00
binfmt_elf32.c [PATCH] remove unused ibcs2/PER_SVR4 in SET_PERSONALITY 2008-10-16 15:40:05 +02:00
cache.c parisc: ensure broadcast tlb purge runs single threaded 2009-07-03 03:34:09 +00:00
drivers.c parisc: add uevent helper for parisc bus 2009-01-05 19:11:59 +00:00
entry.S parisc: add ftrace (function and graph tracer) functionality 2009-03-31 02:51:34 +00:00
firmware.c parisc: expose 32/64-bit capabilities in cpuinfo 2009-03-31 02:51:33 +00:00
ftrace.c parisc: add ftrace (function and graph tracer) functionality 2009-03-31 02:51:34 +00:00
hardware.c [PARISC] add back Crestone Peak cpu 2008-03-15 19:12:19 -07:00
head.S parisc: hijack jump to start_kernel 2008-10-10 16:32:30 +00:00
hpmc.S parisc: export length of os_hpmc vector 2009-01-05 19:18:27 +00:00
init_task.c mm: consolidate init_mm definition 2009-06-16 19:47:28 -07:00
inventory.c parisc: replace remaining __FUNCTION__ occurrences 2008-05-15 10:38:54 -04:00
irq.c parisc: remove obsolete hw_interrupt_type 2009-07-03 03:34:08 +00:00
Makefile parisc: add ftrace (function and graph tracer) functionality 2009-03-31 02:51:34 +00:00
module.c module: cleanup FIXME comments about trimming exception table entries. 2009-06-12 21:47:05 +09:30
pa7300lc.c
pacache.S Revert "parisc: fix trivial section name warnings" 2008-06-13 10:49:45 -04:00
parisc_ksyms.c parisc: add ftrace (function and graph tracer) functionality 2009-03-31 02:51:34 +00:00
pci-dma.c parisc: ensure broadcast tlb purge runs single threaded 2009-07-03 03:34:09 +00:00
pci.c parisc: remove CVS keywords 2009-07-03 03:34:06 +00:00
pdc_chassis.c
pdc_cons.c parisc: Use DEFINE_SPINLOCK 2009-01-05 19:13:18 +00:00
perf_asm.S Revert "parisc: fix trivial section name warnings" 2008-06-13 10:49:45 -04:00
perf_images.h
perf.c parisc: Replace NR_CPUS in parisc code 2009-01-05 19:09:02 +00:00
process.c ptrace: remove PT_DTRACE from avr32, mn10300, parisc, s390, sh, xtensa 2009-06-18 13:03:48 -07:00
processor.c parisc: remove CVS keywords 2009-07-03 03:34:06 +00:00
ptrace.c parisc: fix bug in compat_arch_ptrace 2008-11-20 13:09:17 -08:00
real2.S parisc: move pdc_result to real2.S 2008-10-10 16:32:28 +00:00
setup.c parisc: remove CVS keywords 2009-07-03 03:34:06 +00:00
signal32.c parisc: fix off by one in setup_sigcontext32 2008-06-13 10:49:55 -04:00
signal32.h [PARISC] spelling fixes: arch/parisc/ 2007-05-22 22:52:16 -04:00
signal.c CRED: Wrap task credential accesses in the PA-RISC arch 2008-11-14 10:38:38 +11:00
smp.c Merge branch 'rusty-cpumask-parisc' into parisc 2009-04-02 01:43:14 +00:00
stacktrace.c parisc: add LATENCYTOP_SUPPORT and CONFIG_STACKTRACE_SUPPORT 2009-03-31 02:51:34 +00:00
sys32.h
sys_parisc32.c ptrace: remove PT_DTRACE from avr32, mn10300, parisc, s390, sh, xtensa 2009-06-18 13:03:48 -07:00
sys_parisc.c unified (weak) sys_pipe implementation 2008-05-03 13:50:33 -07:00
syscall_table.S parisc: wire up preadv/pwritev syscalls 2009-07-03 03:34:05 +00:00
syscall.S parisc: document light weight syscall ABI 2009-03-31 02:51:35 +00:00
time.c parisc: fix "delay!" timer handling 2009-07-03 03:34:09 +00:00
topology.c parisc: Replace NR_CPUS in parisc code 2009-01-05 19:09:02 +00:00
traps.c parisc: oops_enter()/oops_exit() in die() 2009-03-31 02:51:35 +00:00
unaligned.c arch/parisc/kernel/unaligned.c: use time_* macros 2008-05-15 10:38:54 -04:00
unwind.c parisc: fix GFP_KERNEL use while atomic in unwinder 2009-01-05 18:15:25 +00:00
vmlinux.lds.S parisc: add ftrace (function and graph tracer) functionality 2009-03-31 02:51:34 +00:00