linux/arch
Benjamin Herrenschmidt b991f05f13 [POWERPC] Fix deadlock with mmu_hash_lock in hash_page_sync
hash_page_sync() takes and releases the low level mmu hash
lock in order to sync with other processors disposing of page
tables.  Because that lock can be needed to service hash misses
triggered by interrupt handlers, taking it must be done with
interrupts off.  However, hash_page_sync() appears to be called
with interrupts enabled, thus causing occasional deadlocks.

We fix it by making sure hash_page_sync() masks interrupts while
holding the lock.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-03 22:11:11 +11:00
..
alpha alpha: use iommu_is_span_boundary helper function 2008-03-13 13:11:43 -07:00
arm Merge branch 'omap-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into m 2008-03-20 15:59:51 +00:00
avr32 avr32: Fix bug in early resource allocation code 2008-03-27 15:31:57 +01:00
blackfin [Blackfin] arch: fix atomic and32/xor32 comments and ENDPROC markings 2008-03-03 17:44:14 -07:00
cris cris: correct usage of __user for copy to and from user space in lib/usercopy and uaccess.h 2008-03-04 16:35:16 -08:00
frv FRV: Change the timerfd syscalls to be the same as i386 2008-02-20 19:58:16 -08:00
h8300 h8300: defconfig update 2008-02-23 17:12:16 -08:00
ia64 [IA64] kprobes arch consolidation build fix 2008-03-06 09:49:01 -08:00
m32r ide: introduce HAVE_IDE 2008-02-09 10:46:40 +01:00
m68k m68k{,nommu}: Wire up new timerfd syscalls 2008-03-04 08:04:11 -08:00
m68knommu m68k{,nommu}: Wire up new timerfd syscalls 2008-03-04 08:04:11 -08:00
mips [MIPS] Clocksource: Only install r4k counter as clocksource if present. 2008-03-12 14:14:42 +00:00
mn10300 MN10300: define HZ as a config option 2008-02-23 17:12:13 -08:00
parisc [PARISC] head.S: section mismatch fixes 2008-03-15 19:12:22 -07:00
powerpc [POWERPC] Fix deadlock with mmu_hash_lock in hash_page_sync 2008-04-03 22:11:11 +11:00
ppc [PPC] 8xx: swap bug-fix 2008-03-07 16:56:54 -06:00
s390 [S390] futex: let futex_atomic_cmpxchg_pt survive early functional tests. 2008-03-20 17:33:46 +01:00
sh sh: Use relative paths for mach/cpu symlinks. 2008-03-21 12:22:01 +09:00
sparc Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-03-17 23:44:31 -07:00
sparc64 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2008-03-26 18:35:22 -07:00
um [UML]: uml-net: don't set IFF_ALLMULTI in set_multicast_list 2008-03-26 00:16:29 -07:00
v850 ide: introduce HAVE_IDE 2008-02-09 10:46:40 +01:00
x86 Avoid false positive warnings in kmap_atomic_prot() with DEBUG_HIGHMEM 2008-03-28 13:08:14 -07:00
xtensa [XTENSA] Allow debugger to modify the WINDOWBASE register. 2008-02-13 17:45:36 -08:00
.gitignore arch: Ignore arch/i386 and arch/x86_64 2008-01-19 21:29:39 -08:00
Kconfig Kprobes: indicate kretprobe support in Kconfig 2008-03-04 16:35:11 -08:00