diff options
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/block/dasd_eckd.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c index e0b77210d37a..3590fdb5b2fd 100644 --- a/drivers/s390/block/dasd_eckd.c +++ b/drivers/s390/block/dasd_eckd.c | |||
@@ -1418,8 +1418,10 @@ static void dasd_eckd_handle_unsolicited_interrupt(struct dasd_device *device, | |||
1418 | 1418 | ||
1419 | 1419 | ||
1420 | /* service information message SIM */ | 1420 | /* service information message SIM */ |
1421 | if ((irb->ecw[6] & DASD_SIM_SENSE) == DASD_SIM_SENSE) { | 1421 | if (irb->esw.esw0.erw.cons && (irb->ecw[27] & DASD_SENSE_BIT_0) && |
1422 | ((irb->ecw[6] & DASD_SIM_SENSE) == DASD_SIM_SENSE)) { | ||
1422 | dasd_3990_erp_handle_sim(device, irb->ecw); | 1423 | dasd_3990_erp_handle_sim(device, irb->ecw); |
1424 | dasd_schedule_device_bh(device); | ||
1423 | return; | 1425 | return; |
1424 | } | 1426 | } |
1425 | 1427 | ||