aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/cio/device.c
diff options
context:
space:
mode:
authorCornelia Huck <cornelia.huck@de.ibm.com>2006-12-04 09:41:04 -0500
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2006-12-04 09:41:04 -0500
commitd23861ff1a4da1f4a5255eb4582f620191c6e1c0 (patch)
treefcf5cd0ce14600f2ace203bc71ae940db7fe6497 /drivers/s390/cio/device.c
parent24cb5b4846ebae5543869b5c596c2650f380df53 (diff)
[S390] cio: Retry internal operations after vary off.
If I/O was running on a just varied off chpid, it will be terminated. If this was a common I/O layer internal I/O, it needs to be retried. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/cio/device.c')
-rw-r--r--drivers/s390/cio/device.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index 39c98f940507..359b46c25314 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -948,6 +948,9 @@ io_subchannel_ioterm(struct device *dev)
948 cdev = dev->driver_data; 948 cdev = dev->driver_data;
949 if (!cdev) 949 if (!cdev)
950 return; 950 return;
951 /* Internal I/O will be retried by the interrupt handler. */
952 if (cdev->private->flags.intretry)
953 return;
951 cdev->private->state = DEV_STATE_CLEAR_VERIFY; 954 cdev->private->state = DEV_STATE_CLEAR_VERIFY;
952 if (cdev->handler) 955 if (cdev->handler)
953 cdev->handler(cdev, cdev->private->intparm, 956 cdev->handler(cdev, cdev->private->intparm,