diff options
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/cio/ccwreq.c | 7 | ||||
-rw-r--r-- | drivers/s390/cio/device_id.c | 2 | ||||
-rw-r--r-- | drivers/s390/cio/device_pgid.c | 2 | ||||
-rw-r--r-- | drivers/s390/cio/io_sch.h | 2 |
4 files changed, 7 insertions, 6 deletions
diff --git a/drivers/s390/cio/ccwreq.c b/drivers/s390/cio/ccwreq.c index a6e205a384b2..9509e3860934 100644 --- a/drivers/s390/cio/ccwreq.c +++ b/drivers/s390/cio/ccwreq.c | |||
@@ -82,7 +82,7 @@ static void ccwreq_do(struct ccw_device *cdev) | |||
82 | /* Perform start function. */ | 82 | /* Perform start function. */ |
83 | sch->lpm = 0xff; | 83 | sch->lpm = 0xff; |
84 | memset(&cdev->private->irb, 0, sizeof(struct irb)); | 84 | memset(&cdev->private->irb, 0, sizeof(struct irb)); |
85 | rc = cio_start(sch, cp, req->mask); | 85 | rc = cio_start(sch, cp, (u8) req->mask); |
86 | if (rc == 0) { | 86 | if (rc == 0) { |
87 | /* I/O started successfully. */ | 87 | /* I/O started successfully. */ |
88 | ccw_device_set_timeout(cdev, req->timeout); | 88 | ccw_device_set_timeout(cdev, req->timeout); |
@@ -116,7 +116,8 @@ void ccw_request_start(struct ccw_device *cdev) | |||
116 | { | 116 | { |
117 | struct ccw_request *req = &cdev->private->req; | 117 | struct ccw_request *req = &cdev->private->req; |
118 | 118 | ||
119 | req->mask = 0x80; | 119 | /* Try all paths twice to counter link flapping. */ |
120 | req->mask = 0x8080; | ||
120 | req->retries = req->maxretries; | 121 | req->retries = req->maxretries; |
121 | req->mask = lpm_adjust(req->mask, req->lpm); | 122 | req->mask = lpm_adjust(req->mask, req->lpm); |
122 | req->drc = 0; | 123 | req->drc = 0; |
@@ -212,7 +213,7 @@ static void ccwreq_log_status(struct ccw_device *cdev, enum io_status status) | |||
212 | } __attribute__ ((packed)) data; | 213 | } __attribute__ ((packed)) data; |
213 | data.dev_id = cdev->private->dev_id; | 214 | data.dev_id = cdev->private->dev_id; |
214 | data.retries = req->retries; | 215 | data.retries = req->retries; |
215 | data.lpm = req->mask; | 216 | data.lpm = (u8) req->mask; |
216 | data.status = (u8) status; | 217 | data.status = (u8) status; |
217 | CIO_TRACE_EVENT(2, "reqstat"); | 218 | CIO_TRACE_EVENT(2, "reqstat"); |
218 | CIO_HEX_EVENT(2, &data, sizeof(data)); | 219 | CIO_HEX_EVENT(2, &data, sizeof(data)); |
diff --git a/drivers/s390/cio/device_id.c b/drivers/s390/cio/device_id.c index 4728644ed85c..78a0b43862c5 100644 --- a/drivers/s390/cio/device_id.c +++ b/drivers/s390/cio/device_id.c | |||
@@ -21,7 +21,7 @@ | |||
21 | #include "device.h" | 21 | #include "device.h" |
22 | #include "io_sch.h" | 22 | #include "io_sch.h" |
23 | 23 | ||
24 | #define SENSE_ID_RETRIES 5 | 24 | #define SENSE_ID_RETRIES 256 |
25 | #define SENSE_ID_TIMEOUT (10 * HZ) | 25 | #define SENSE_ID_TIMEOUT (10 * HZ) |
26 | #define SENSE_ID_MIN_LEN 4 | 26 | #define SENSE_ID_MIN_LEN 4 |
27 | #define SENSE_ID_BASIC_LEN 7 | 27 | #define SENSE_ID_BASIC_LEN 7 |
diff --git a/drivers/s390/cio/device_pgid.c b/drivers/s390/cio/device_pgid.c index 5bcefeaff744..aad188e43b4f 100644 --- a/drivers/s390/cio/device_pgid.c +++ b/drivers/s390/cio/device_pgid.c | |||
@@ -20,7 +20,7 @@ | |||
20 | #include "device.h" | 20 | #include "device.h" |
21 | #include "io_sch.h" | 21 | #include "io_sch.h" |
22 | 22 | ||
23 | #define PGID_RETRIES 5 | 23 | #define PGID_RETRIES 256 |
24 | #define PGID_TIMEOUT (10 * HZ) | 24 | #define PGID_TIMEOUT (10 * HZ) |
25 | 25 | ||
26 | /* | 26 | /* |
diff --git a/drivers/s390/cio/io_sch.h b/drivers/s390/cio/io_sch.h index dbc69a5a043e..d72ae4c93af9 100644 --- a/drivers/s390/cio/io_sch.h +++ b/drivers/s390/cio/io_sch.h | |||
@@ -109,7 +109,7 @@ struct ccw_request { | |||
109 | void (*callback)(struct ccw_device *, void *, int); | 109 | void (*callback)(struct ccw_device *, void *, int); |
110 | void *data; | 110 | void *data; |
111 | /* These fields are used internally. */ | 111 | /* These fields are used internally. */ |
112 | u8 mask; | 112 | u16 mask; |
113 | u16 retries; | 113 | u16 retries; |
114 | int drc; | 114 | int drc; |
115 | int cancel:1; | 115 | int cancel:1; |