target/loongarch/kvm: Add software breakpoint support
authorBibo Mao <maobibo@loongson.cn>
Fri, 7 Jun 2024 03:50:16 +0000 (11:50 +0800)
committerSong Gao <gaosong@loongson.cn>
Fri, 12 Jul 2024 01:41:18 +0000 (09:41 +0800)
commitd38e31ef740d102020d1b14b5a2becd4336b462d
tree734ff27ecb22b0939abd4582aabe2d26ca708f9f
parent36ff178716054d36ca2a61cdf3452514bd95220b
target/loongarch/kvm: Add software breakpoint support

With KVM virtualization, debug exception is injected to guest kernel
rather than host for normal break intruction. Here hypercall
instruction with special code is used for sw breakpoint usage,
and detailed instruction comes from kvm kernel with user API
KVM_REG_LOONGARCH_DEBUG_INST.

Now only software breakpoint is supported, and it is allowed to
insert/remove software breakpoint. We can debug guest kernel with gdb
method after kernel is loaded, hardware breakpoint will be added in later.

Signed-off-by: Bibo Mao <maobibo@loongson.cn>
Reviewed-by: Song Gao <gaosong@loongson.cn>
Tested-by: Song Gao <gaosong@loongson.cn>
Message-Id: <20240607035016.2975799-1-maobibo@loongson.cn>
Signed-off-by: Song Gao <gaosong@loongson.cn>
configs/targets/loongarch64-softmmu.mak
target/loongarch/kvm/kvm.c