2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-25 13:43:55 +08:00
linux-next/arch
Scott Wood f49196a5f5 [POWERPC] IPIC: Fix spinlock recursion in set_irq_handler
This causes ipic_set_irq_type to set the handler directly rather
than call set_irq_handler, which causes spinlock recursion because
the lock is already held when ipic_set_irq_type is called.

I'm also not convinced that ipic_set_irq_type should be changing the
handler at all.  There seem to be several controllers that don't and
several that do.  Those that do would break what appears to be a common
usage of calling set_irq_chip_and_handler followed by set_irq_type, if a
non-standard handler were to be used.  OTOH, irq_create_of_mapping()
doesn't set the handler, but only calls set_irq_type().

This patch gets things working in the spinlock-debugging-enabled case,
but I'm curious as to where the handler setting is ideally supposed to be
done.  I don't see any documentation on set_irq_type() that clarifies
what the semantics are supposed to be.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-10-25 13:49:22 +10:00
..
alpha [PATCH] fixing includes in alpha_ksyms.c 2006-10-12 12:25:27 -07:00
arm [PATCH] one more ARM IRQ fix 2006-10-20 10:26:44 -07:00
arm26 [PATCH] remove bogus arch-specific syscall exports 2006-10-11 11:17:07 -07:00
avr32 [PATCH] IRQ: Fix AVR32 breakage 2006-10-11 11:14:14 -07:00
cris more misc typo fixes 2006-10-03 22:34:14 +02:00
frv IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
h8300 Remove all inclusions of <linux/config.h> 2006-10-04 03:38:54 -04:00
i386 [PATCH] x86: Revert new unwind kernel stack termination 2006-10-21 18:37:02 +02:00
ia64 [IA64] Count resched interrupts 2006-10-17 15:03:08 -07:00
m32r [PATCH] m32r: more __user annotations 2006-10-11 11:17:06 -07:00
m68k [PATCH] clean m68k ksyms 2006-10-11 11:17:06 -07:00
m68knommu [PATCH] m68knommu: sync syscalls with m68k 2006-10-13 08:35:39 -07:00
mips [MIPS] Fix aliasing bug in copy_to_user_page / copy_from_user_page 2006-10-21 23:17:35 +01:00
parisc [PATCH] remove bogus arch-specific syscall exports 2006-10-11 11:17:07 -07:00
powerpc [POWERPC] IPIC: Fix spinlock recursion in set_irq_handler 2006-10-25 13:49:22 +10:00
ppc [POWERPC] Support feature fixups in vdso's 2006-10-25 11:54:07 +10:00
s390 [S390] update default configuration 2006-10-18 18:30:59 +02:00
sh sh: SH-4A UBC support 2006-10-12 12:16:13 +09:00
sh64 fix file specification in comments 2006-10-03 23:01:26 +02:00
sparc [SPARC]: Sparc compilation fix with floppy enabled 2006-10-17 19:28:54 -07:00
sparc64 [SPARC64]: Fix of_ioremap(). 2006-10-19 17:20:31 -07:00
um [PATCH] uml: mmapper - remove just added but wrong "const" attribute 2006-10-20 10:26:36 -07:00
v850 Remove all inclusions of <linux/config.h> 2006-10-04 03:38:54 -04:00
x86_64 [PATCH] x86-64: increase PHB1 split transaction timeout 2006-10-22 00:41:15 +02:00
xtensa fix file specification in comments 2006-10-03 23:01:26 +02:00