From 05c52cc3c76d81e9717bc1928cd080d5f3619b87 Mon Sep 17 00:00:00 2001 From: Stefan Haberland Date: Tue, 27 Dec 2011 11:27:28 +0100 Subject: [PATCH] --- yaml --- r: 280636 b: refs/heads/master c: b38f27e8425a132ed2dc49ffb3741404e81363d8 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/s390/block/dasd_alias.c | 10 ++++++++++ trunk/drivers/s390/block/dasd_eckd.c | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index e1d7b6957880..d90ef3ec8ce9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b206181d636d416fde48c7f493d7ac5d935b57e3 +refs/heads/master: b38f27e8425a132ed2dc49ffb3741404e81363d8 diff --git a/trunk/drivers/s390/block/dasd_alias.c b/trunk/drivers/s390/block/dasd_alias.c index c388eda1e2b1..553b3c5abb0a 100644 --- a/trunk/drivers/s390/block/dasd_alias.c +++ b/trunk/drivers/s390/block/dasd_alias.c @@ -705,6 +705,16 @@ struct dasd_device *dasd_alias_get_start_dev(struct dasd_device *base_device) if (lcu->pav == NO_PAV || lcu->flags & (NEED_UAC_UPDATE | UPDATE_PENDING)) return NULL; + if (unlikely(!(private->features.feature[8] & 0x01))) { + /* + * PAV enabled but prefix not, very unlikely + * seems to be a lost pathgroup + * use base device to do IO + */ + DBF_DEV_EVENT(DBF_ERR, base_device, "%s", + "Prefix not enabled with PAV enabled\n"); + return NULL; + } spin_lock_irqsave(&lcu->lock, flags); alias_device = group->next; diff --git a/trunk/drivers/s390/block/dasd_eckd.c b/trunk/drivers/s390/block/dasd_eckd.c index 763f1bd9605a..bbcd5e9206ee 100644 --- a/trunk/drivers/s390/block/dasd_eckd.c +++ b/trunk/drivers/s390/block/dasd_eckd.c @@ -2397,7 +2397,7 @@ static struct dasd_ccw_req *dasd_eckd_build_cp_cmd_single( sizeof(struct PFX_eckd_data)); } else { if (define_extent(ccw++, cqr->data, first_trk, - last_trk, cmd, startdev) == -EAGAIN) { + last_trk, cmd, basedev) == -EAGAIN) { /* Clock not in sync and XRC is enabled. * Try again later. */