From: Sebastian Ott Date: Thu, 25 Dec 2008 12:39:15 +0000 (+0100) Subject: [S390] cio: use pim to check for multipath. X-Git-Tag: v2.6.29-rc1~584^2~40 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=d36f0c66389eb5e4dbd9b095eea252230ba3273e;p=linux-2.6-omap-h63xx.git [S390] cio: use pim to check for multipath. To check if multipath is available we count the bits set in lpm, which could change over time (via configure [on|off] of a path). The following patch uses the pim (which is persistent) for this decision. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky --- diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c index 6d714cf5506..23d5752349b 100644 --- a/drivers/s390/cio/device.c +++ b/drivers/s390/cio/device.c @@ -1174,7 +1174,8 @@ void io_subchannel_init_config(struct subchannel *sch) { memset(&sch->config, 0, sizeof(sch->config)); sch->config.csense = 1; - if ((sch->lpm & (sch->lpm - 1)) != 0) + /* Use subchannel mp mode when there is more than 1 installed CHPID. */ + if ((sch->schib.pmcw.pim & (sch->schib.pmcw.pim - 1)) != 0) sch->config.mp = 1; }