By checking the results of errors on SSCH in the kvm-unit-tests We noticed that no error was reported when a SSCH is started to access addresses not existing in the guest. For exemple accessing 3G on a guest with 1G memory.
If we look at QEMU ccw_dstream_write/write functions we see that they are often not checked for error in various places. It follows that accessing an invalid address does not trigger a subchannel status program check to the guest as it should. Regards, Pierre Pierre Morel (1): s390x: css: report errors from ccw_dstream_read/write hw/char/terminal3270.c | 11 +++++-- hw/s390x/3270-ccw.c | 5 +++- hw/s390x/css.c | 14 +++++---- hw/s390x/virtio-ccw.c | 66 ++++++++++++++++++++++++++++++------------ 4 files changed, 69 insertions(+), 27 deletions(-) -- 2.17.1 changelog: from v1: - handle_payload_3270_read, return CSS error on CSS access errors keep returning -EIO for other 3270 internal errors. (Connie) - css_interpret_ccw, let CSS handle the residual count even on errors it is supposed to do it right. (Connie)