This series implements QEMU KVM Guest Debug on RISC-V, with which we could debug RISC-V KVM guest from the host side, using software breakpoints.
This series is based on riscv-to-apply.next branch (v9.0.0) and is also available at: https://github.com/Du-Chao/qemu-alistair23/tree/riscv-to-apply.next.0524 The corresponding KVM side patches have been merged already: https://lore.kernel.org/kvm/20240402062628.5425-1-duc...@eswincomputing.com/ A TODO list which will be added later: 1. HW breakpoints support 2. A 'corner case' in which the debug exception is not inserted by the debugger, need to be re-injected to the guest. Changes from RFC->v1: - Rebased on riscv-to-apply.next - use configs/ definition to conditionalize debug support RFC link: https://lore.kernel.org/qemu-riscv/20231221094923.7349-1-duc...@eswincomputing.com/ Chao Du (4): target/riscv/kvm: add software breakpoints support target/riscv/kvm: implement kvm_arch_update_guest_debug() target/riscv/kvm: handle the exit with debug reason target/riscv/kvm: define TARGET_KVM_HAVE_GUEST_DEBUG accel/kvm/kvm-all.c | 8 +-- configs/targets/riscv64-softmmu.mak | 1 + include/sysemu/kvm.h | 6 +- target/arm/kvm.c | 6 +- target/i386/kvm/kvm.c | 6 +- target/mips/kvm.c | 6 +- target/ppc/kvm.c | 6 +- target/riscv/kvm/kvm-cpu.c | 101 ++++++++++++++++++++++++++++ target/s390x/kvm/kvm.c | 6 +- 9 files changed, 130 insertions(+), 16 deletions(-) -- 2.17.1