aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2011-05-26 09:48:22 +0200
committerHeiko Carstens <heiko.carstens@de.ibm.com>2011-05-26 09:48:24 +0200
commit902050bcdece6191565c055539e82c5cc534feed (patch)
tree5da860ead6daaa841e0234d66930d5d0791b2224
parent4db70f73e56961b9bcdfd0c36c62847a18b7dbb5 (diff)
[S390] pfault: always enable service signal interrupt
Always enable the service signal subclass mask bit in cr0, if pfault is available. That way we use the normal cpu hotplug way to propagate the subclass mask bit in cr0 instead of open coding it. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-rw-r--r--arch/s390/mm/fault.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c
index a0f9e730f26..e46ba292742 100644
--- a/arch/s390/mm/fault.c
+++ b/arch/s390/mm/fault.c
@@ -485,7 +485,6 @@ int pfault_init(void)
"2:\n"
EX_TABLE(0b,1b)
: "=d" (rc) : "a" (&refbk), "m" (refbk) : "cc");
- __ctl_set_bit(0, 9);
return rc;
}
@@ -500,7 +499,6 @@ void pfault_fini(void)
if (!MACHINE_IS_VM || pfault_disable)
return;
- __ctl_clear_bit(0,9);
asm volatile(
" diag %0,0,0x258\n"
"0:\n"
@@ -615,6 +613,7 @@ static int __init pfault_irq_init(void)
rc = pfault_init() == 0 ? 0 : -EOPNOTSUPP;
if (rc)
goto out_pfault;
+ ctl_set_bit(0, 9);
hotcpu_notifier(pfault_cpu_notify, 0);
return 0;