X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fsvm.c;fp=palacios%2Fsrc%2Fpalacios%2Fsvm.c;h=2a0ce7488135e90473165157f5726204842dbc3d;hb=f6a5e71ff885541ff7daa9603c910d4c45649f6d;hp=40dded06d9b078f88bbdfdd6f5370d56bfc4815d;hpb=8c767ddb04d3ac42d080d9f9f5f40196d6f8f217;p=palacios.git diff --git a/palacios/src/palacios/svm.c b/palacios/src/palacios/svm.c index 40dded0..2a0ce74 100644 --- a/palacios/src/palacios/svm.c +++ b/palacios/src/palacios/svm.c @@ -199,7 +199,8 @@ static void Init_VMCB_BIOS(vmcb_t * vmcb, struct guest_info *vm_info) { if (vm_info->shdw_pg_mode == SHADOW_PAGING) { PrintDebug("Creating initial shadow page table\n"); - vm_info->direct_map_pt = (addr_t)create_passthrough_pde32_pts(vm_info); + vm_info->direct_map_pt = V3_PAddr((addr_t)create_passthrough_pde32_pts(vm_info)); + vm_info->shdw_pg_state.shadow_cr3 |= (vm_info->direct_map_pt & ~0xfff); vm_info->shdw_pg_state.guest_cr0 = 0x0000000000000010LL; PrintDebug("Created\n");