v1: https://lore.kernel.org/lkml/20230629083452.183274-1-iii@xxxxxxxxxxxxx/ v1 -> v2: Fix three more issues. Add selftests (Claudio). Hi, I tried to compare the behavior of KVM and TCG by diffing instruction traces, and found five issues in KVM related to stepping into interrupt handlers. I'm not very familiar with the KVM code base, so please let me know if the fixes can be improved or if these problems need to be handled completely differently. Best regards, Ilya Ilya Leoshkevich (6): KVM: s390: interrupt: Fix single-stepping into interrupt handlers KVM: s390: interrupt: Fix single-stepping into program interrupt handlers KVM: s390: interrupt: Fix single-stepping kernel-emulated instructions KVM: s390: interrupt: Fix single-stepping userspace-emulated instructions KVM: s390: interrupt: Fix single-stepping ISKE KVM: s390: selftests: Add selftest for single-stepping arch/s390/kvm/intercept.c | 39 ++++- arch/s390/kvm/interrupt.c | 10 ++ arch/s390/kvm/kvm-s390.c | 20 ++- tools/testing/selftests/kvm/Makefile | 1 + .../testing/selftests/kvm/s390x/debug_test.c | 160 ++++++++++++++++++ 5 files changed, 218 insertions(+), 12 deletions(-) create mode 100644 tools/testing/selftests/kvm/s390x/debug_test.c -- 2.41.0