[S390] dasd_pm: fix stop flag handling
The stop flags are handled in the generic restore function so the stop flag is removed also for FBA and DIAG devices. Signed-off-by: Stefan Haberland <stefan.haberland@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
Родитель
772f54720a
Коммит
e6125fba81
|
@ -2503,15 +2503,25 @@ int dasd_generic_restore_device(struct ccw_device *cdev)
|
|||
if (IS_ERR(device))
|
||||
return PTR_ERR(device);
|
||||
|
||||
/* allow new IO again */
|
||||
device->stopped &= ~DASD_STOPPED_PM;
|
||||
device->stopped &= ~DASD_UNRESUMED_PM;
|
||||
|
||||
dasd_schedule_device_bh(device);
|
||||
if (device->block)
|
||||
dasd_schedule_block_bh(device->block);
|
||||
|
||||
if (device->discipline->restore)
|
||||
rc = device->discipline->restore(device);
|
||||
if (rc)
|
||||
/*
|
||||
* if the resume failed for the DASD we put it in
|
||||
* an UNRESUMED stop state
|
||||
*/
|
||||
device->stopped |= DASD_UNRESUMED_PM;
|
||||
|
||||
dasd_put_device(device);
|
||||
return rc;
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dasd_generic_restore_device);
|
||||
|
||||
|
|
|
@ -3243,9 +3243,6 @@ int dasd_eckd_restore_device(struct dasd_device *device)
|
|||
int is_known, rc;
|
||||
struct dasd_uid temp_uid;
|
||||
|
||||
/* allow new IO again */
|
||||
device->stopped &= ~DASD_STOPPED_PM;
|
||||
|
||||
private = (struct dasd_eckd_private *) device->private;
|
||||
|
||||
/* Read Configuration Data */
|
||||
|
@ -3295,12 +3292,7 @@ int dasd_eckd_restore_device(struct dasd_device *device)
|
|||
return 0;
|
||||
|
||||
out_err:
|
||||
/*
|
||||
* if the resume failed for the DASD we put it in
|
||||
* an UNRESUMED stop state
|
||||
*/
|
||||
device->stopped |= DASD_UNRESUMED_PM;
|
||||
return 0;
|
||||
return -1;
|
||||
}
|
||||
|
||||
static struct ccw_driver dasd_eckd_driver = {
|
||||
|
|
Загрузка…
Ссылка в новой задаче