linux_old1/arch/s390/kernel
Heiko Carstens df7997ab1c [S390] irq: fix service signal external interrupt handling
Interrupt sources like pfault, sclp, dasd_diag and virtio all use the
service signal external interrupt subclass mask in control register 0
to enable and disable the corresponding interrupt.
Because no reference counting is implemented each subsystem thinks it
is the only user of subclass and sets and clears the bit like it wants.
This leads to case that unloading the dasd diag module under z/VM
causes both sclp and pfault interrupts to be masked. The result will
be locked up system sooner or later.
Fix this by introducing a new way to set (register) and clear
(unregister) the service signal subclass mask bit in cr0.
Also convert all drivers.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2011-05-26 09:48:24 +02:00
..
vdso32 [S390] vdso: disable gcov profiling 2011-05-23 10:24:29 +02:00
vdso64 [S390] vdso: disable gcov profiling 2011-05-23 10:24:29 +02:00
Makefile jump label: Add s390 support 2011-04-04 13:43:16 -04:00
asm-offsets.c [S390] pfault: cpu hotplug vs missing completion interrupts 2011-05-23 10:24:29 +02:00
audit.c [S390] Get rid of a bunch of sparse warnings again. 2007-10-12 16:13:06 +02:00
audit.h [S390] Get rid of a bunch of sparse warnings again. 2007-10-12 16:13:06 +02:00
base.S [S390] Cleanup struct _lowcore usage and defines. 2010-02-26 22:37:31 +01:00
bitmap.c [S390] move EXPORT_SYMBOLs to definitions 2009-03-26 15:24:11 +01:00
compat_audit.c [S390] Get rid of a bunch of sparse warnings again. 2007-10-12 16:13:06 +02:00
compat_exec_domain.c [S390] Get rid of a lot of sparse warnings. 2007-02-05 21:16:47 +01:00
compat_linux.c BKL: remove extraneous #include <smp_lock.h> 2010-11-17 08:59:32 -08:00
compat_linux.h Mark arguments to certain syscalls as being const 2010-08-13 16:53:13 -07:00
compat_ptrace.h [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
compat_signal.c [S390] 64-bit register support for 31-bit processes 2009-10-06 10:35:10 +02:00
compat_wrapper.S [S390] wire up sys_syncfs 2011-03-23 10:15:58 +01:00
cpcmd.c [S390] convert cpcmd printks to pr_xxx macros. 2008-12-25 13:39:19 +01:00
crash.c [S390] Get rid of a lot of sparse warnings. 2007-02-05 21:16:47 +01:00
debug.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
diag.c [S390] replace diag10() with diag10_range() function 2011-05-10 17:13:43 +02:00
dis.c [S390] disassembler: handle b280/spp instruction 2011-05-10 17:13:42 +02:00
early.c [S390] early: limit savesys cmd string handling 2011-03-23 10:15:14 +01:00
ebcdic.c [S390] Get rid of a lot of sparse warnings. 2007-02-05 21:16:47 +01:00
entry.S [S390] pfault: cpu hotplug vs missing completion interrupts 2011-05-23 10:24:29 +02:00
entry.h [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
entry64.S [S390] pfault: cpu hotplug vs missing completion interrupts 2011-05-23 10:24:29 +02:00
ftrace.c [S390] cleanup ftrace backend functions 2011-01-05 12:47:31 +01:00
head.S [S390] compile fix for latest binutils 2011-04-04 09:43:33 +02:00
head31.S [S390] correct address of _stext with CONFIG_SHARED_KERNEL=y 2010-05-12 09:32:26 +02:00
head64.S [S390] correct address of _stext with CONFIG_SHARED_KERNEL=y 2010-05-12 09:32:26 +02:00
init_task.c Use new __init_task_data macro in arch init_task.c files. 2009-09-21 06:27:08 +02:00
ipl.c sysfs: add struct file* to bin_attr callbacks 2010-05-21 09:37:31 -07:00
irq.c [S390] oprofile: add missing irq stats counter 2011-05-23 10:24:32 +02:00
jump_label.c jump label: Add s390 support 2011-04-04 13:43:16 -04:00
kprobes.c [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
machine_kexec.c [S390] kexec: Disable ftrace during kexec 2011-03-15 17:08:24 +01:00
mcount.S [S390] cleanup ftrace backend functions 2011-01-05 12:47:31 +01:00
mcount64.S [S390] cleanup ftrace backend functions 2011-01-05 12:47:31 +01:00
mem_detect.c Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
module.c modules: Fix module_bug_list list corruption race 2010-10-05 11:29:27 -07:00
nmi.c [S390] irq: have detailed statistics for interrupt types 2011-01-05 12:47:25 +01:00
process.c [S390] Remove unused includes in process.c 2011-05-23 10:24:32 +02:00
processor.c [S390] prevent unneccesary loops_per_jiffy recalculation 2011-01-05 12:47:32 +01:00
ptrace.c [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
reipl.S [S390] Cleanup struct _lowcore usage and defines. 2010-02-26 22:37:31 +01:00
reipl64.S Fix common misspellings 2011-03-31 11:26:23 -03:00
relocate_kernel.S [S390] Reset infrastructure for re-IPL. 2006-12-04 15:40:26 +01:00
relocate_kernel64.S [S390] Reset infrastructure for re-IPL. 2006-12-04 15:40:26 +01:00
s390_ext.c [S390] irq: fix service signal external interrupt handling 2011-05-26 09:48:24 +02:00
s390_ksyms.c [S390] move EXPORT_SYMBOLs to definitions 2009-03-26 15:24:11 +01:00
sclp.S Merge branch 'for-next' into for-linus 2010-03-08 16:55:37 +01:00
setup.c [S390] Remove data execution protection 2011-05-23 10:24:28 +02:00
signal.c [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
smp.c [S390] cpu hotplug: fix external interrupt subclass mask handling 2011-05-23 10:24:33 +02:00
stacktrace.c [S390] Fix stacktrace compile bug. 2008-07-17 17:22:09 +02:00
suspend.c [S390] hibernate: make sure pfn_is_nosave handles lowcore pages 2009-09-22 22:58:45 +02:00
switch_cpu.S [S390] Fix parameter passing for smp_switch_to_cpu() 2011-04-04 09:43:32 +02:00
switch_cpu64.S [S390] Fix parameter passing for smp_switch_to_cpu() 2011-04-04 09:43:32 +02:00
swsusp_asm64.S Merge branch 'for-35' of git://repo.or.cz/linux-kbuild 2010-06-01 08:55:52 -07:00
sys_s390.c [S390] sys_personality: follow u_long to unsigned int conversion 2010-08-13 10:06:54 +02:00
syscalls.S [S390] wire up sys_syncfs 2011-03-23 10:15:58 +01:00
sysinfo.c [S390] topology: add SCHED_MC config option 2010-10-29 16:50:49 +02:00
time.c [S390] convert old cpumask API into new one 2011-05-23 10:24:31 +02:00
topology.c [S390] convert old cpumask API into new one 2011-05-23 10:24:31 +02:00
traps.c s390: remove task_show_regs 2011-02-15 07:34:16 -08:00
vdso.c mm: arch: rename in_gate_area_no_task to in_gate_area_no_mm 2011-03-23 16:36:55 -04:00
vmlinux.lds.S percpu: Always align percpu output section to PAGE_SIZE 2011-03-24 18:50:09 +01:00
vtime.c Fix common misspellings 2011-03-31 11:26:23 -03:00