Revision b1b135c8d619cb2c7045d6ee4e48375882518bb5 authored by Christian Borntraeger on 07 August 2008, 07:18:34 UTC, committed by Rusty Russell on 12 August 2008, 07:52:55 UTC
commit 611e097d7707741a336a0677d9d69bec40f29f3d
Author: Christian Borntraeger <borntraeger@de.ibm.com>
hvc_console: rework setup to replace irq functions with callbacks
introduced a spinlock recursion problem.

request_irq tries to call the handler if the IRQ is shared.
The irq handler of hvc_console calls hvc_poll and hvc_kill
which might take the hvc_struct spinlock. Therefore, we have
to call request_irq outside the spinlock.

We can move the notifier_add safely outside the spinlock as ->data must
not be changed by the backend. Otherwise, tty_hangup would fail anyway.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
1 parent ed6d687
History
File Mode Size
ABI
DocBook
PCI
RCU
accounting
acpi
aoe
arm
auxdisplay
blackfin
block
cdrom
connector
console
controllers
cpu-freq
cpuidle
cris
crypto
device-mapper
driver-model
dvb
early-userspace
fault-injection
fb
filesystems
firmware_class
frv
hwmon
i2c
i2o
ia64
ide
infiniband
input
ioctl
isdn
ja_JP
kbuild
kdump
ko_KR
laptops
lguest
m68k
make
mips
mn10300
namespaces
netlabel
networking
parisc
pcmcia
power
powerpc
prctl
s390
scheduler
scsi
serial
sh
sound
sparc
spi
sysctl
telephony
thermal
timers
tracers
uml
usb
video4linux
vm
w1
watchdog
x86
zh_CN
00-INDEX -rw-r--r-- 13.2 KB
BUG-HUNTING -rw-r--r-- 8.1 KB
Changes -rw-r--r-- 11.3 KB
CodingStyle -rw-r--r-- 28.9 KB
DMA-API.txt -rw-r--r-- 23.0 KB
DMA-ISA-LPC.txt -rw-r--r-- 5.2 KB
DMA-attributes.txt -rw-r--r-- 1.3 KB
DMA-mapping.txt -rw-r--r-- 27.2 KB
HOWTO -rw-r--r-- 28.6 KB
IO-mapping.txt -rw-r--r-- 7.8 KB
IPMI.txt -rw-r--r-- 27.0 KB
IRQ-affinity.txt -rw-r--r-- 2.1 KB
IRQ.txt -rw-r--r-- 962 bytes
Intel-IOMMU.txt -rw-r--r-- 3.9 KB
MSI-HOWTO.txt -rw-r--r-- 22.6 KB
ManagementStyle -rw-r--r-- 12.9 KB
README.DAC960 -rw-r--r-- 33.9 KB
README.cycladesZ -rw-r--r-- 293 bytes
SAK.txt -rw-r--r-- 2.9 KB
SM501.txt -rw-r--r-- 2.8 KB
SecurityBugs -rw-r--r-- 1.8 KB
Smack.txt -rw-r--r-- 19.8 KB
SubmitChecklist -rw-r--r-- 3.3 KB
SubmittingDrivers -rw-r--r-- 6.2 KB
SubmittingPatches -rw-r--r-- 25.3 KB
VGA-softcursor.txt -rw-r--r-- 2.0 KB
applying-patches.txt -rw-r--r-- 19.5 KB
atomic_ops.txt -rw-r--r-- 19.0 KB
basic_profiling.txt -rw-r--r-- 1.7 KB
binfmt_misc.txt -rw-r--r-- 6.0 KB
braille-console.txt -rw-r--r-- 1.4 KB
bt8xxgpio.txt -rw-r--r-- 4.3 KB
cachetlb.txt -rw-r--r-- 15.9 KB
cciss.txt -rw-r--r-- 6.2 KB
cgroups.txt -rw-r--r-- 20.7 KB
computone.txt -rw-r--r-- 17.2 KB
cpqarray.txt -rw-r--r-- 2.2 KB
cpu-hotplug.txt -rw-r--r-- 14.9 KB
cpu-load.txt -rw-r--r-- 3.0 KB
cpusets.txt -rw-r--r-- 34.4 KB
cputopology.txt -rw-r--r-- 1.2 KB
dcdbas.txt -rw-r--r-- 3.6 KB
debugging-modules.txt -rw-r--r-- 954 bytes
debugging-via-ohci1394.txt -rw-r--r-- 7.5 KB
dell_rbu.txt -rw-r--r-- 4.9 KB
devices.txt -rw-r--r-- 115.8 KB
digiepca.txt -rw-r--r-- 3.7 KB
dontdiff -rw-r--r-- 1.8 KB
edac.txt -rw-r--r-- 20.8 KB
eisa.txt -rw-r--r-- 7.1 KB
email-clients.txt -rw-r--r-- 7.9 KB
exception.txt -rw-r--r-- 12.1 KB
feature-removal-schedule.txt -rw-r--r-- 11.9 KB
floppy.txt -rw-r--r-- 8.3 KB
ftrace.txt -rw-r--r-- 52.0 KB
gpio.txt -rw-r--r-- 25.6 KB
hayes-esp.txt -rw-r--r-- 6.5 KB
highuid.txt -rw-r--r-- 2.4 KB
hpet.txt -rw-r--r-- 6.4 KB
hw_random.txt -rw-r--r-- 3.5 KB
initrd.txt -rw-r--r-- 14.1 KB
io_ordering.txt -rw-r--r-- 1.9 KB
ioctl-number.txt -rw-r--r-- 7.2 KB
iostats.txt -rw-r--r-- 7.9 KB
irqflags-tracing.txt -rw-r--r-- 2.6 KB
isapnp.txt -rw-r--r-- 433 bytes
java.txt -rw-r--r-- 10.7 KB
kernel-doc-nano-HOWTO.txt -rw-r--r-- 9.7 KB
kernel-docs.txt -rw-r--r-- 34.8 KB
kernel-parameters.txt -rw-r--r-- 71.6 KB
keys-request-key.txt -rw-r--r-- 7.4 KB
keys.txt -rw-r--r-- 46.2 KB
kobject.txt -rw-r--r-- 16.7 KB
kprobes.txt -rw-r--r-- 20.6 KB
kref.txt -rw-r--r-- 6.2 KB
ldm.txt -rw-r--r-- 3.9 KB
leds-class.txt -rw-r--r-- 3.8 KB
local_ops.txt -rw-r--r-- 6.1 KB
lockdep-design.txt -rw-r--r-- 8.8 KB
lockstat.txt -rw-r--r-- 6.5 KB
logo.gif -rw-r--r-- 16.0 KB
logo.txt -rw-r--r-- 563 bytes
magic-number.txt -rw-r--r-- 9.7 KB
markers.txt -rw-r--r-- 3.4 KB
mca.txt -rw-r--r-- 11.3 KB
md.txt -rw-r--r-- 19.6 KB
memory-barriers.txt -rw-r--r-- 76.2 KB
memory-hotplug.txt -rw-r--r-- 13.4 KB
memory.txt -rw-r--r-- 2.1 KB
mono.txt -rw-r--r-- 2.5 KB
moxa-smartio -rw-r--r-- 20.1 KB
mtrr.txt -rw-r--r-- 10.2 KB
mutex-design.txt -rw-r--r-- 5.8 KB
nbd.txt -rw-r--r-- 1.9 KB
nmi_watchdog.txt -rw-r--r-- 3.9 KB
nommu-mmap.txt -rw-r--r-- 10.2 KB
numastat.txt -rw-r--r-- 861 bytes
oops-tracing.txt -rw-r--r-- 12.3 KB
paride.txt -rw-r--r-- 16.7 KB
parport-lowlevel.txt -rw-r--r-- 32.2 KB
parport.txt -rw-r--r-- 8.8 KB
pi-futex.txt -rw-r--r-- 5.7 KB
pnp.txt -rw-r--r-- 6.8 KB
preempt-locking.txt -rw-r--r-- 5.2 KB
prio_tree.txt -rw-r--r-- 5.2 KB
ramdisk.txt -rw-r--r-- 6.2 KB
rbtree.txt -rw-r--r-- 6.6 KB
rfkill.txt -rw-r--r-- 24.7 KB
riscom8.txt -rw-r--r-- 1.3 KB
robust-futex-ABI.txt -rw-r--r-- 8.7 KB
robust-futexes.txt -rw-r--r-- 9.4 KB
rocket.txt -rw-r--r-- 7.6 KB
rt-mutex-design.txt -rw-r--r-- 32.8 KB
rt-mutex.txt -rw-r--r-- 3.5 KB
rtc.txt -rw-r--r-- 15.1 KB
serial-console.txt -rw-r--r-- 4.0 KB
sgi-ioc4.txt -rw-r--r-- 2.0 KB
sgi-visws.txt -rw-r--r-- 678 bytes
sparse.txt -rw-r--r-- 2.7 KB
specialix.txt -rw-r--r-- 14.7 KB
spinlocks.txt -rw-r--r-- 8.8 KB
stable_api_nonsense.txt -rw-r--r-- 9.2 KB
stable_kernel_rules.txt -rw-r--r-- 2.8 KB
stallion.txt -rw-r--r-- 17.6 KB
svga.txt -rw-r--r-- 14.1 KB
sx.txt -rw-r--r-- 11.3 KB
sysfs-rules.txt -rw-r--r-- 8.1 KB
sysrq.txt -rw-r--r-- 10.1 KB
tty.txt -rw-r--r-- 10.3 KB
unaligned-memory-access.txt -rw-r--r-- 10.0 KB
unicode.txt -rw-r--r-- 6.5 KB
unshare.txt -rw-r--r-- 13.1 KB
video-output.txt -rw-r--r-- 1.1 KB
volatile-considered-harmful.txt -rw-r--r-- 5.6 KB
voyager.txt -rw-r--r-- 3.4 KB
zorro.txt -rw-r--r-- 2.8 KB

README.DAC960

back to top