X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fsvm.c;h=015e3969d279d5dc89e8ac0b98aee1b75b1af27c;hb=5db3136d5331c355c188537c68005db8d2cb4eac;hp=584bf2c9b9577d6b82d6ba459b8d4275303a1bd8;hpb=eb7dda8d4a92a2e8d0c8f867c65317d756ca6c11;p=palacios.git diff --git a/palacios/src/palacios/svm.c b/palacios/src/palacios/svm.c index 584bf2c..015e396 100644 --- a/palacios/src/palacios/svm.c +++ b/palacios/src/palacios/svm.c @@ -1,3 +1,26 @@ +/* + * This file is part of the Palacios Virtual Machine Monitor developed + * by the V3VEE Project with funding from the United States National + * Science Foundation and the Department of Energy. + * + * The V3VEE Project is a joint project between Northwestern University + * and the University of New Mexico. You can find out more at + * http://www.v3vee.org + * + * Copyright (c) 2008, Jack Lange + * Copyright (c) 2008, The V3VEE Project + * All rights reserved. + * + * Author: Jack Lange + * + * This is free software. You are permitted to use, + * redistribute, and modify it as specified in the file "V3VEE_LICENSE". + */ + + + + + #include #include @@ -10,6 +33,7 @@ #include #include +#include @@ -341,7 +365,7 @@ static int init_svm_guest(struct guest_info *info) { PrintDebug("Host Address of rip = 0x%x\n", host_addr); PrintDebug("Instr (15 bytes) at %x:\n", host_addr); - PrintTraceMemDump((char*)host_addr, 15); + PrintTraceMemDump((uchar_t *)host_addr, 15); break; } @@ -486,11 +510,13 @@ void Init_SVM(struct vmm_ctrl_ops * vmm_ops) { // Setup the host state save area host_state = V3_AllocPages(4); - msr.e_reg.high = 0; - msr.e_reg.low = (uint_t)host_state; + /* 64-BIT-ISSUE */ + // msr.e_reg.high = 0; + //msr.e_reg.low = (uint_t)host_state; + msr.r_reg = (addr_t)host_state; - PrintDebug("Host State being saved at %x\n", (uint_t)host_state); + PrintDebug("Host State being saved at %x\n", (addr_t)host_state); Set_MSR(SVM_VM_HSAVE_PA_MSR, msr.e_reg.high, msr.e_reg.low);