kernel-ark/kernel
Linus Torvalds b42172fc7b Don't call "note_interrupt()" with irq descriptor lock held
This reverts commit f72fa70760, and solves
the problem that it tried to fix by simply making "__do_IRQ()" call the
note_interrupt() function without the lock held, the way everybody else
does.

It should be noted that all interrupt handling code must never allow the
descriptor actors to be entered "recursively" (that's why we do all the
magic IRQ_PENDING stuff in the first place), so there actually is
exclusion at that much higher level, even in the absense of locking.

Acked-by: Vivek Goyal <vgoyal@in.ibm.com>
Acked-by:Pavel Emelianov <xemul@openvz.org>
Cc: Andrew Morton <akpm@osdl.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-22 09:32:06 -08:00
..
irq Don't call "note_interrupt()" with irq descriptor lock held 2006-11-22 09:32:06 -08:00
power [PATCH] swsusp: debugging 2006-11-03 12:27:58 -08:00
time [PATCH] time_adjust cleared before use 2006-10-28 11:30:55 -07:00
.gitignore
acct.c
audit.c
audit.h
auditfilter.c
auditsc.c
capability.c
compat.c [PATCH] Create compat_sys_migrate_pages 2006-11-03 12:27:59 -08:00
configs.c
cpu.c [PATCH] Fix the spurious unlock_cpu_hotplug false warnings 2006-11-06 01:46:22 -08:00
cpuset.c
delayacct.c [PATCH] lockdep: fix delayacct locking bug 2006-11-06 01:46:23 -08:00
dma.c
exec_domain.c
exit.c [PATCH] taskstats_tgid_free: fix usage 2006-10-28 11:30:54 -07:00
extable.c
fork.c Revert "[PATCH] fix Data Acess error in dup_fd" 2006-11-14 15:20:51 -08:00
futex_compat.c
futex.c [PATCH] schedule removal of FUTEX_FD 2006-11-03 12:27:58 -08:00
hrtimer.c
itimer.c
kallsyms.c
Kconfig.hz
Kconfig.preempt
kexec.c
kfifo.c
kmod.c
kprobes.c
ksysfs.c
kthread.c
latency.c
lockdep_internals.h
lockdep_proc.c
lockdep.c [PATCH] lockdep: fix static keys in module-allocated percpu areas 2006-11-17 11:10:37 -08:00
Makefile
module.c [PATCH] ndiswrapper: don't set the module->taints flags 2006-10-30 12:08:40 -08:00
mutex-debug.c
mutex-debug.h
mutex.c
mutex.h
nsproxy.c [PATCH] kernel/nsproxy.c: use kmemdup() 2006-10-20 10:26:44 -07:00
panic.c
params.c
pid.c
posix-cpu-timers.c [PATCH] posix-cpu-timers: prevent signal delivery starvation 2006-10-17 08:18:43 -07:00
posix-timers.c
printk.c [PATCH] Add printk_timed_ratelimit() 2006-11-03 12:27:58 -08:00
profile.c [PATCH] bitmap: parse input from kernel and user buffers 2006-10-11 11:14:22 -07:00
ptrace.c
rcupdate.c
rcutorture.c
relay.c
resource.c
rtmutex_common.h
rtmutex-debug.c
rtmutex-debug.h
rtmutex-tester.c
rtmutex.c
rtmutex.h
rwsem.c
sched.c [PATCH] readjust comments of task_timeslice for kernel doc 2006-10-20 10:26:37 -07:00
seccomp.c
signal.c Make sure "user->sigpending" count is in sync 2006-11-04 13:03:00 -08:00
softirq.c
softlockup.c
spinlock.c
srcu.c
stacktrace.c
stop_machine.c
sys_ni.c [PATCH] Create compat_sys_migrate_pages 2006-11-03 12:27:59 -08:00
sys.c
sysctl.c [PATCH] sysctl: allow a zero ctl_name in the middle of a sysctl table 2006-11-06 01:46:23 -08:00
taskstats.c [PATCH] taskstats: fix sub-threads accounting 2006-10-31 08:07:00 -08:00
time.c
timer.c
tsacct.c [PATCH] xacct_add_tsk: fix pure theoretical ->mm use-after-free 2006-10-30 12:08:41 -08:00
uid16.c
unwind.c [PATCH] x86-64: Speed up dwarf2 unwinder 2006-10-21 18:37:01 +02:00
user.c Fix unlikely (but possible) race condition on task->user access 2006-11-04 10:06:02 -08:00
utsname.c
wait.c
workqueue.c [PATCH] workqueue: update kerneldoc 2006-10-28 11:30:55 -07:00