]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
s390/sclp: make early sclp irq handler more robust
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Wed, 11 Jan 2017 08:14:45 +0000 (09:14 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 16 Jan 2017 06:27:55 +0000 (07:27 +0100)
commit742dc5773cf5bbb355e4b4dd61310d5f51556477
treec5bcd9921d22571dfd55a333c3746c44dec278a2
parent68cc795d1933285705ced6d841ef66c00ce98cbe
s390/sclp: make early sclp irq handler more robust

Make the early sclp interrupt handler more robust:

- disable all interrupt sub classes except for the service signal subclass
- extend ctlreg0 union so it is easily possible to set the service signal
  subclass mask bit without using a magic number
- disable lowcore protection before writing to it
- make sure that all write accesses are done before the original content
  of control register 0 is restored, which could enable lowcore protection

Reviewed-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/ctl_reg.h
arch/s390/kernel/sclp.c