s390/sclp: fix possible control register corruption
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Thu, 7 Jan 2016 12:37:22 +0000 (13:37 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 11 Jan 2016 12:03:00 +0000 (13:03 +0100)
commitc2ab7282f0fcd11eea4d0ba45d1c65d89428c314
tree83642948d0f2f154725b19a0eb7b61429b174822
parentbcb7825a77f41c7dd91da6f7ac10b928156a322e
s390/sclp: fix possible control register corruption

sclp_sync_wait() disables all external interrupt classes except for
the service signal subclass.

The static mask used for that however is wrong. It clears a couple of
bits which shouldn't be cleared and on the other hand potentially does
not clear bits which should be cleared.

Fix this by using the same generic mask like we do it in our delay
implementation.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Reviewed-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/char/sclp.c