summaryrefslogtreecommitdiffstats
path: root/drivers/s390/block/dasd_eckd.c
diff options
context:
space:
mode:
authorHolger Smolinski <Holger.Smolinski@de.ibm.com>2009-01-09 12:14:51 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2009-01-09 12:15:05 +0100
commit13de227bcd80fbdaeebe1f31154487dddb7d5b1e (patch)
tree3f37f92d9fd5dd3c155544afb06cfe8117ec708c /drivers/s390/block/dasd_eckd.c
parent1301809bcee33c2153605b4387c57fab75f9800a (diff)
downloadblackbird-op-linux-13de227bcd80fbdaeebe1f31154487dddb7d5b1e.tar.gz
blackbird-op-linux-13de227bcd80fbdaeebe1f31154487dddb7d5b1e.zip
[S390] dasd: add device attribute to disable blocking on lost paths
When the connection between host and storage server is lost, the dasd device driver usually blocks all I/O on affected devices and waits for them to reappear. In some setups however it would be better if the I/O is returned as error so that device can be recovered by some other means, eg. in a raid or multipath setup. Signed-off-by: Holger Smolinski <Holger.Smolinski@de.ibm.com> Signed-off-by: Stefan Weinhuber <wein@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block/dasd_eckd.c')
-rw-r--r--drivers/s390/block/dasd_eckd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c
index bd2c52e20762..bdb87998f364 100644
--- a/drivers/s390/block/dasd_eckd.c
+++ b/drivers/s390/block/dasd_eckd.c
@@ -1700,7 +1700,8 @@ static struct dasd_ccw_req *dasd_eckd_build_cp(struct dasd_device *startdev,
recid++;
}
}
- if (blk_noretry_request(req))
+ if (blk_noretry_request(req) ||
+ block->base->features & DASD_FEATURE_FAILFAST)
set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags);
cqr->startdev = startdev;
cqr->memdev = startdev;
OpenPOWER on IntegriCloud