diff options
author | Ilya Leoshkevich <iii@linux.ibm.com> | 2023-07-25 17:37:17 +0300 |
---|---|---|
committer | Janosch Frank <frankja@linux.ibm.com> | 2023-08-28 12:24:19 +0300 |
commit | 74a439ef7b67d89d29ec7485c3aeca20a64449c5 (patch) | |
tree | aaade94674733cd89121d0fc19e05d22123b3b73 /arch/m68k/mvme147 | |
parent | 16631c42e6ff4f5acf30998fda6c2ea09d1adbfe (diff) | |
download | linux-74a439ef7b67d89d29ec7485c3aeca20a64449c5.tar.xz |
KVM: s390: interrupt: Fix single-stepping into program interrupt handlers
Currently, after single-stepping an instruction that generates a
specification exception, GDB ends up on the instruction immediately
following it.
The reason is that vcpu_post_run() injects the interrupt and sets
KVM_GUESTDBG_EXIT_PENDING, causing a KVM_SINGLESTEP exit. The
interrupt is not delivered, however, therefore userspace sees the
address of the next instruction.
Fix by letting the __vcpu_run() loop go into the next iteration,
where vcpu_pre_run() delivers the interrupt and sets
KVM_GUESTDBG_EXIT_PENDING.
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Message-ID: <20230725143857.228626-3-iii@linux.ibm.com>
Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Diffstat (limited to 'arch/m68k/mvme147')
0 files changed, 0 insertions, 0 deletions