This series has a character of a refactoring, as the initial motivation was improving readability and reducing complexity.
Despite of the original intent the tree first patches buxfixes, and according to Dong Jia the patch-set also has a functional value: for ccw pass-through, he is planing to pass-through the instruction completion information (cc or interruption condition) from the kernel, and this patch set can pretty much be seen as a preparation for that. The basic idea is: tell how to handle an unusual conditon where it's identified, instead of mapping it to an errno (more or less arbitrarily), then possibly mapping these errnos around, to finally (mentally) map the errno back to the condition and take appropriate action. At the end of the series we also have 125 lines of code less to maintain, and the executable got a bit smaller too. Halil Pasic (9): s390x/css: fix cc handling for XSCH s390x: fix invalid use of cc 1 for SSCH s390x/css: be more consistent if broken beyond repair s390x: refactor error handling for SSCH and RSCH s390x: refactor error handling for XSCH handler s390x: refactor error handling for CSCH handler s390x: refactor error handling for HSCH handler s390x: refactor error handling for MSCH handler s390x: factor out common ioinst handler logic hw/s390x/css.c | 158 ++++++++++++-------------------------- hw/s390x/s390-ccw.c | 8 +- hw/vfio/ccw.c | 32 ++++++-- include/hw/s390x/css.h | 38 +++++++--- include/hw/s390x/s390-ccw.h | 2 +- target/s390x/ioinst.c | 181 ++++++++++---------------------------------- 6 files changed, 147 insertions(+), 272 deletions(-) -- 2.13.5