uint64_t ram_size;
void *ram_start;
+
+ struct kvm_regs regs;
};
static void die_perror(const char *s)
static void kvm__run(struct kvm *self)
{
- int ret;
+ if (ioctl(self->vcpu_fd, KVM_SET_REGS, &self->regs) < 0)
+ die_perror("KVM_SET_REGS failed");
- ret = ioctl(self->vcpu_fd, KVM_RUN, 0);
- if (ret < 0)
- die_perror("KVM_RUN ioctl");
+ if (ioctl(self->vcpu_fd, KVM_RUN, 0) < 0)
+ die_perror("KVM_RUN failed");
}
static void kvm__show_registers(struct kvm *self)
kvm = kvm__init();
- kvm__load_kernel(kvm, kernel_filename);
+ kvm->regs.rip = kvm__load_kernel(kvm, kernel_filename);
kvm__run(kvm);