diff options
author | Stefan Haberland <sth@linux.vnet.ibm.com> | 2017-03-22 10:30:40 +0100 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2017-03-28 16:54:27 +0200 |
commit | ccd53fa2261c2676258fe523d9201099f4d5ebc1 (patch) | |
tree | eeb1fca7bf8a5878bc2f35d152142b3b4032fd89 /drivers | |
parent | 2fa5ed7d87074268b5d29cdff6c4f81f51666885 (diff) | |
download | linux-stable-ccd53fa2261c2676258fe523d9201099f4d5ebc1.tar.gz linux-stable-ccd53fa2261c2676258fe523d9201099f4d5ebc1.tar.bz2 linux-stable-ccd53fa2261c2676258fe523d9201099f4d5ebc1.zip |
s390/dasd: check if query host access feature is supported
Some storage servers might not support the query host access feature.
Check if the corresponding feature code is set.
Signed-off-by: Stefan Haberland <sth@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/s390/block/dasd_eckd.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c index 0b38217f8147..eb090e85b02e 100644 --- a/drivers/s390/block/dasd_eckd.c +++ b/drivers/s390/block/dasd_eckd.c @@ -5172,6 +5172,10 @@ static int dasd_eckd_query_host_access(struct dasd_device *device, if (!device->block && private->lcu->pav == HYPER_PAV) return -EOPNOTSUPP; + /* may not be supported by the storage server */ + if (!(private->features.feature[14] & 0x80)) + return -EOPNOTSUPP; + cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ + 1 /* RSSD */, sizeof(struct dasd_psf_prssd_data) + 1, device); |