linux/drivers/s390/cio
Sebastian Ott 0f5d050cea s390/cio: allow to reset channel measurement block
Prior to commit 1bc6664bdf a call to
enable_cmf for a device for which channel measurement was already
enabled resulted in a reset of the measurement data.

What looked like bugs at the time (a 2nd allocation was triggered
but failed, reset was called regardless of previous failures, and
errors have not been reported to userspace) was actually something
at least one userspace tool depended on. Restore that behavior in
a sane way.

Fixes: 1bc6664bdf ("s390/cio: use device_lock during cmb activation")
Cc: stable@vger.kernel.org #v4.4+
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2016-07-14 13:01:49 +02:00
..
airq.c s390/cio: Introduce common I/O layer tracepoints 2015-12-18 14:59:36 +01:00
blacklist.c s390: Use pr_warn instead of pr_warning 2016-03-07 13:12:04 +01:00
blacklist.h
ccwgroup.c s390/ccwgroup: use ccwgroup_ungroup wrapper 2014-06-16 10:32:52 +02:00
ccwreq.c s390: Use pr_warn instead of pr_warning 2016-03-07 13:12:04 +01:00
chp.c s390/cio: update measurement characteristics 2016-01-26 12:47:51 +01:00
chp.h s390: use canonical include guard style 2016-06-13 15:58:17 +02:00
chsc_sch.c s390/cio: Remove unused inline assemblies 2015-12-18 14:59:33 +01:00
chsc_sch.h
chsc.c s390/time: STP sync clock correction 2016-06-13 15:58:19 +02:00
chsc.h s390: add support for ipl devices in subchannel sets > 0 2015-11-11 13:56:27 +01:00
cio_debug.h
cio.c s390: Use pr_warn instead of pr_warning 2016-03-07 13:12:04 +01:00
cio.h s390/cio: Consolidate inline assemblies and related data definitions 2015-12-18 14:59:34 +01:00
cmf.c s390/cio: allow to reset channel measurement block 2016-07-14 13:01:49 +02:00
crw.c s390/cio: Consolidate inline assemblies and related data definitions 2015-12-18 14:59:34 +01:00
css.c s390/cio: Remove unused inline assemblies 2015-12-18 14:59:33 +01:00
css.h s390/cio: Delay scan for newly available I/O devices 2013-12-16 14:37:41 +01:00
device_fsm.c s390/cio: Remove unused inline assemblies 2015-12-18 14:59:33 +01: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/cio: move ccw_device_stlck functions 2015-10-27 09:34:44 +01:00
device_pgid.c s390/cio: move ccw_device_stlck functions 2015-10-27 09:34:44 +01:00
device_status.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device.c s390: Use pr_warn instead of pr_warning 2016-03-07 13:12:04 +01:00
device.h s390/cio: move ccw_device_stlck functions 2015-10-27 09:34:44 +01:00
eadm_sch.c s390: remove unneeded variables 2015-08-07 09:57:01 +02:00
eadm_sch.h s390/eadm_sch: improve quiesce handling 2013-10-24 17:16:58 +02:00
fcx.c [S390] drivers: Correct size given to memset 2009-12-18 17:43:32 +01:00
idset.c s390/cio: idset.c: remove some unused functions 2015-01-08 10:02:50 +01:00
idset.h s390: use canonical include guard style 2016-06-13 15:58:17 +02:00
io_sch.h s390/cio: Consolidate inline assemblies and related data definitions 2015-12-18 14:59:34 +01:00
ioasm.c s390/cio: use basic blocks for i/o inline assemblies 2016-06-28 09:32:34 +02:00
ioasm.h s390/cio: Change I/O instructions from inline to normal functions 2015-12-18 14:59:37 +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: Change I/O instructions from inline to normal functions 2015-12-18 14:59:37 +01:00
orb.h s390: add eadm related structures 2012-09-26 15:44:57 +02:00
qdio_debug.c s390: Delete unnecessary checks before the function call "debug_unregister" 2015-11-27 09:24:16 +01:00
qdio_debug.h qdio: Keep device-specific dbf entries 2014-06-16 10:31:58 +02:00
qdio_main.c s390/qdio: fix WARN_ON_ONCE condition 2015-10-07 04:52:06 -07:00
qdio_setup.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
qdio_thinint.c s390/airq: simplify adapter interrupt code 2013-06-26 21:10:28 +02:00
qdio.h s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
scm.c s390/scm_block: do not hide eadm subchannel dependency 2013-11-15 14:08:42 +01:00
trace.c s390/cio: Introduce common I/O layer tracepoints 2015-12-18 14:59:36 +01:00
trace.h s390/cio: Introduce common I/O layer tracepoints 2015-12-18 14:59:36 +01:00