linux/drivers/s390/cio
Heiko Carstens 0a50182e6a s390/cio/ioasm: Fix __xsch() condition code handling
commit f0edc8f113 upstream.

For the __xsch() inline assembly the conversion to flag output macros is
incomplete. Only the conditional shift of the return value was added, while
the required changes to the inline assembly itself are missing.

If compiled with GCC versions before 14.2 this leads to a double shift of
the cc output operand and therefore the returned value of __xsch() is
incorrectly always zero, instead of the expected condition code.

Fixes: e200565d43 ("s390/cio/ioasm: Convert to use flag output macros")
Cc: stable@vger.kernel.org
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Reviewed-by: Juergen Christ <jchrist@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-10-19 16:37:36 +02:00
..
airq.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
blacklist.c s390/cio: avoid excessive path-verification requests 2021-09-27 13:54:38 +02:00
blacklist.h s390: add a few more SPDX identifiers 2017-12-05 07:51:09 +01:00
ccwgroup.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
ccwreq.c s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
chp.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
chp.h s390/cio: Externalize full CMG characteristics 2024-11-13 14:31:31 +01:00
chsc.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
chsc.h s390/cio: Externalize full CMG characteristics 2024-11-13 14:31:31 +01:00
chsc_sch.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
chsc_sch.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cio.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
cio.h s390/cio: Correct some typos in comments 2024-10-10 15:32:44 +02:00
cio_debug.h s390/cio: introduce CIO debugfs directory 2021-03-22 11:36:04 +01:00
cio_debugfs.c s390/cio: introduce CIO debugfs directory 2021-03-22 11:36:04 +01:00
cio_inject.c s390/cio: Ensure the copied buf is NUL terminated 2024-04-29 19:21:34 +02:00
cio_inject.h s390/cio: add CRW inject functionality 2021-03-22 11:36:04 +01:00
cmf.c s390/cio/cmf: Switch over to sysfs_emit() 2024-10-25 16:03:25 +02:00
crw.c s390/cio: Remove outdated email address 2025-02-18 18:53:47 +01:00
css.c s390/cio/css: Switch over to sysfs_emit() 2024-10-25 16:03:25 +02:00
css.h driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
device.c s390/cio: Update purge function to unregister the unused subchannels 2025-10-19 16:37:09 +02:00
device.h s390/cio: remove pm support from ccw bus driver 2020-12-02 18:19:25 +01:00
device_fsm.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
device_id.c s390: Convert MACHINE_IS_[LPAR|VM|KVM], etc, machine_is_[lpar|vm|kvm]() 2025-03-04 17:18:07 +01:00
device_ops.c s390/cio: Use array indices instead of pointer arithmetic 2025-01-03 11:00:53 +01:00
device_pgid.c s390/cio: use new address translation helpers 2024-03-13 09:23:47 +01:00
device_status.c s390/cio: use new address translation helpers 2024-03-13 09:23:47 +01:00
eadm_sch.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
eadm_sch.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fcx.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
idset.c bitmap: introduce generic optimized bitmap_size() 2024-04-01 10:49:28 +01:00
idset.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io_sch.h s390/cio: remove pm support from ccw bus driver 2020-12-02 18:19:25 +01:00
ioasm.c s390/cio/ioasm: Fix __xsch() condition code handling 2025-10-19 16:37:36 +02:00
ioasm.h s390: assume diag308 set always works 2018-04-10 07:38:59 +02:00
isc.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
itcw.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
Makefile s390/cio: add CRW inject functionality 2021-03-22 11:36:04 +01:00
orb.h s390/cio: use bitwise types to allow for type checking 2024-03-13 09:23:46 +01:00
qdio.h s390/qdio: Move memory alloc/pointer arithmetic for slib and sl into one place 2025-01-03 11:00:53 +01:00
qdio_debug.c s390/drivers: Remove unnecessary include <linux/export.h> 2025-06-17 18:18:03 +02:00
qdio_debug.h s390/qdio: cleanly split alloc and establish 2020-04-06 13:13:50 +02:00
qdio_main.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
qdio_setup.c s390/qdio: Move memory alloc/pointer arithmetic for slib and sl into one place 2025-01-03 11:00:53 +01:00
qdio_thinint.c s390/drivers: Replace S390_lowcore by get_lowcore() 2024-06-18 17:01:33 +02:00
scm.c s390/drivers: Explicitly include <linux/export.h> 2025-06-17 18:18:02 +02:00
trace.c s390/cio: Remove tracing for rchp instruction 2019-05-08 15:01:22 +02:00
trace.h s390/drivers: Replace S390_lowcore by get_lowcore() 2024-06-18 17:01:33 +02:00
vfio_ccw_async.c vfio/ccw: Remove private->mdev 2022-07-07 14:06:12 -06:00
vfio_ccw_chp.c eventfd: simplify eventfd_signal() 2023-11-28 14:08:38 +01:00
vfio_ccw_cp.c s390/vfio_ccw: Fix target addresses of TIC CCWs 2024-07-03 12:05:32 +02:00
vfio_ccw_cp.h vfio/ccw: simplify the cp_get_orb interface 2023-01-09 14:34:07 +01:00
vfio_ccw_drv.c s390/vfio-ccw: Make mdev_types not look like a fake flex array 2025-02-18 18:53:47 +01:00
vfio_ccw_fsm.c s390/vfio_ccw: fix virtual vs physical address confusion 2024-03-13 09:23:45 +01:00
vfio_ccw_ops.c eventfd: simplify eventfd_signal() 2023-11-28 14:08:38 +01:00
vfio_ccw_private.h s390/vfio-ccw: Make mdev_types not look like a fake flex array 2025-02-18 18:53:47 +01:00
vfio_ccw_trace.c vfio-ccw: Add trace for CRW event 2020-06-03 11:28:19 +02:00
vfio_ccw_trace.h vfio-ccw: Add trace for CRW event 2020-06-03 11:28:19 +02:00