X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fsvm_handler.c;h=b5ad69f8ab53cac79fc593b7780b0ffebc892d00;hb=07820ee58e9b356341ce86cd2b2938d3abef60c9;hp=18ea2e33662e2ca4b613f4358ab709589df5b5d2;hpb=d0534dc3a0dc459971b2cdfd423dfb9a4f06a08b;p=palacios.git diff --git a/palacios/src/palacios/svm_handler.c b/palacios/src/palacios/svm_handler.c index 18ea2e3..b5ad69f 100644 --- a/palacios/src/palacios/svm_handler.c +++ b/palacios/src/palacios/svm_handler.c @@ -32,8 +32,11 @@ int handle_svm_exit(struct guest_info * info) { info->ctrl_regs.cr4 = guest_state->cr4; info->ctrl_regs.cr8 = guest_ctrl->guest_ctrl.V_TPR; info->ctrl_regs.rflags = guest_state->rflags; + info->ctrl_regs.efer = guest_state->efer; get_vmcb_segments((vmcb_t*)(info->vmm_data), &(info->segments)); + info->cpu_mode = get_cpu_mode(info); + info->mem_mode = get_mem_mode(info); exit_code = guest_ctrl->exit_code; @@ -328,7 +331,7 @@ int handle_svm_exit(struct guest_info * info) { guest_state->cr4 = info->ctrl_regs.cr4; guest_ctrl->guest_ctrl.V_TPR = info->ctrl_regs.cr8 & 0xff; guest_state->rflags = info->ctrl_regs.rflags; - + guest_state->efer = info->ctrl_regs.efer; guest_state->cpl = info->cpl;