linux/drivers/s390/cio
Sebastian Ott d99e79ec55 s390/cio: fix pgid reserved check
The check to whom a device is reserved is done by checking the path
state of the affected channel paths. If it turns out that one path is
flagged as reserved by someone else the whole device is marked as such.

However the meaning of the RESVD_ELSE bit is that the addressed device
is reserved to a different pathgroup (and not reserved to a different
LPAR). If we do this test on a path which is currently not a member of
the pathgroup we could erroneously mark the device as reserved to
someone else.

To fix this collect the reserved state for all potential members of the
pathgroup and only mark the device as reserved if all of those potential
members have the RESVD_ELSE bit set.

Cc: stable@vger.kernel.org
Acked-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2012-12-03 10:43:58 -05:00
..
airq.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
blacklist.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
blacklist.h
ccwgroup.c s390/ccwgroup: allow drivers to call set_{on,off}line 2012-11-23 11:14:35 +01:00
ccwreq.c [S390] cio: add message for timeouts on internal I/O 2011-10-30 15:16:41 +01:00
chp.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
chp.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
chsc.c s390/pci: CHSC PCI support for error and availability events 2012-11-30 17:47:24 +01:00
chsc.h s390: add scm notification 2012-09-26 15:44:59 +02:00
chsc_sch.c compat: fix compile breakage on s390 2012-02-27 07:54:27 -08:00
chsc_sch.h
cio.c s390: add uninitialized_var() to suppress false positive compiler warnings 2012-09-26 15:45:23 +02:00
cio.h [S390] hibernate: directly trigger subchannel evaluation 2011-12-01 13:32:17 +01:00
cio_debug.h
cmf.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
crw.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
css.c s390/css: stop stsch loop after cc 3 2012-10-18 17:50:08 +02:00
css.h s390: Move css limits from drivers/s390/cio/ to include/asm/. 2012-11-06 22:39:49 +01:00
device.c s390: use ccw_device_get_schid 2012-11-23 11:14:28 +01:00
device.h s390: use ccw_device_get_schid 2012-11-23 11:14:28 +01:00
device_fsm.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device_id.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device_ops.c s390: use ccw_device_get_schid 2012-11-23 11:14:28 +01:00
device_pgid.c s390/cio: fix pgid reserved check 2012-12-03 10:43:58 -05:00
device_status.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
eadm_sch.c s390/eadm_sch: add support for irq statistics 2012-09-26 15:45:00 +02:00
eadm_sch.h s390/cio: add eadm subchannel driver 2012-09-26 15:45:00 +02:00
fcx.c [S390] drivers: Correct size given to memset 2009-12-18 17:43:32 +01:00
idset.c s390/cio: fix length calculation in idset.c 2012-11-06 22:39:54 +01:00
idset.h s390/css: stop stsch loop after cc 3 2012-10-18 17:50:08 +02:00
io_sch.h [S390] cio: provide fake irb for transport mode IO 2011-12-01 13:32:18 +01:00
ioasm.h [S390] cio: move asms to generic header 2011-03-15 17:08:23 +01:00
isc.c
itcw.c [S390] cio: reduce memory consumption of itcw structures 2011-01-05 12:47:29 +01:00
Makefile s390/cio: add eadm subchannel driver 2012-09-26 15:45:00 +02:00
orb.h s390: add eadm related structures 2012-09-26 15:44:57 +02:00
qdio.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
qdio_debug.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
qdio_debug.h s390/qdio: fix truncated debug output of hex values 2012-09-26 15:45:18 +02:00
qdio_main.c s390/qdio: rework BUG's and WARN_ON's 2012-11-23 11:14:27 +01:00
qdio_setup.c s390: use ccw_device_get_schid 2012-11-23 11:14:28 +01:00
qdio_thinint.c s390/qdio: rework BUG's and WARN_ON's 2012-11-23 11:14:27 +01:00
scm.c s390/scm: remove superfluous lock 2012-09-26 15:45:09 +02:00