From 3ba105fc39d2dea0fc6290b673da7ba3393e8dab Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Wed, 24 Mar 2010 22:16:07 +0200 Subject: [PATCH] Enable KVM guest single-stepping Signed-off-by: Pekka Enberg --- tools/kvm/kvm.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tools/kvm/kvm.c b/tools/kvm/kvm.c index 1dceb768c9f5..1859f4e10ad9 100644 --- a/tools/kvm/kvm.c +++ b/tools/kvm/kvm.c @@ -140,6 +140,16 @@ static void kvm__run(struct kvm *self) die_perror("KVM_RUN failed"); } +static void kvm__enable_singlestep(struct kvm *self) +{ + struct kvm_guest_debug debug = { + .control = KVM_GUESTDBG_ENABLE | KVM_GUESTDBG_SINGLESTEP, + }; + + if (ioctl(self->vcpu_fd, KVM_SET_GUEST_DEBUG, &debug) < 0) + die("KVM_SET_GUEST_DEBUG failed"); +} + static void kvm__show_registers(struct kvm *self) { unsigned long rax, rbx, rcx; @@ -318,6 +328,8 @@ int main(int argc, char *argv[]) kvm__reset_vcpu(kvm, kernel_start); + kvm__enable_singlestep(kvm); + for (;;) { kvm__run(kvm); -- 2.39.5