VirtualBox

Changeset 14366

Show
Ignore:
Timestamp:
11/19/08 18:20:49 (2 months ago)
Author:
vboxsync
Message:

Cleaned up some more.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/include/VBox/hwacc_svm.h

    r14365 r14366  
    667667#pragma pack() 
    668668 
    669 /** 
    670  * Executes INVLPGA. 
    671  * 
    672  * @param   pPageGC         Virtual page to invalidate. 
    673  * @param   u32ASID         Tagged TLB id. 
    674  */ 
    675 DECLASM(void) SVMInvlpgA(RTGCPTR pPageGC, uint32_t u32ASID); 
    676  
    677669#ifdef IN_RING0 
    678670VMMR0DECL(int) SVMR0InvalidatePage(PVM pVM, PVMCPU pVCpu, RTGCPTR GCVirt); 
  • trunk/src/VBox/VMM/HWACCMInternal.h

    r14364 r14366  
    520520VMMR0DECL(PHWACCM_CPUINFO) HWACCMR0GetCurrentCpu(); 
    521521 
    522 DECLASM(int) SVMVMRun(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx); 
    523 DECLASM(int) SVMVMRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx); 
    524 DECLASM(int) SVMVMSwitcherRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx); 
    525  
    526522 
    527523#ifdef VBOX_STRICT 
  • trunk/src/VBox/VMM/VMMR0/HWACCMR0A.asm

    r13908 r14366  
    939939; * @param   pCtx           Guest context 
    940940; */ 
    941 BEGINPROC SVMVMRun 
     941BEGINPROC SVMR0VMRun 
    942942%ifdef RT_ARCH_AMD64 ; fake a cdecl stack frame 
    943943 %ifdef ASM_CALL64_GCC 
     
    10361036%endif 
    10371037    ret 
    1038 ENDPROC SVMVMRun 
     1038ENDPROC SVMR0VMRun 
    10391039 
    10401040%ifdef RT_ARCH_AMD64 
     
    10471047; * @param   pCtx           Guest context 
    10481048; */ 
    1049 BEGINPROC SVMVMRun64 
     1049BEGINPROC SVMR0VMRun64 
    10501050    ; fake a cdecl stack frame 
    10511051 %ifdef ASM_CALL64_GCC 
     
    11571157    add     rsp, 4*xS 
    11581158    ret 
    1159 ENDPROC SVMVMRun64 
     1159ENDPROC SVMR0VMRun64 
    11601160%endif ; RT_ARCH_AMD64 
    11611161 
     
    11681168; @param   uASID    msc:rdx  gcc:rsi  x86:[esp+0C]  Tagged TLB id 
    11691169; 
    1170 ;DECLASM(void) SVMInvlpgA(RTGCPTR pPageGC, uint32_t uASID); 
    1171 BEGINPROC SVMInvlpgA 
     1170;DECLASM(void) SVMR0InvlpgA(RTGCPTR pPageGC, uint32_t uASID); 
     1171BEGINPROC SVMR0InvlpgA 
    11721172%ifdef RT_ARCH_AMD64 
    11731173 %ifdef ASM_CALL64_GCC 
     
    11881188    invlpga [xAX], ecx 
    11891189    ret 
    1190 ENDPROC SVMInvlpgA 
     1190ENDPROC SVMR0InvlpgA 
    11911191 
    11921192%else 
     
    11971197; @param   uASID    msc:edx  gcc:esi  x86:[esp+08]  Tagged TLB id 
    11981198; 
    1199 ;DECLASM(void) SVMInvlpgA(RTGCPTR pPageGC, uint32_t uASID); 
    1200 BEGINPROC SVMInvlpgA 
     1199;DECLASM(void) SVMR0InvlpgA(RTGCPTR pPageGC, uint32_t uASID); 
     1200BEGINPROC SVMR0InvlpgA 
    12011201%ifdef RT_ARCH_AMD64 
    12021202 %ifdef ASM_CALL64_GCC 
     
    12171217    invlpga [xAX], ecx 
    12181218    ret 
    1219 ENDPROC SVMInvlpgA 
     1219ENDPROC SVMR0InvlpgA 
    12201220 
    12211221%endif ; GC_ARCH_BITS != 64 
  • trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp

    r14364 r14366  
    762762        return VERR_PGM_UNSUPPORTED_SHADOW_PAGING_MODE; 
    763763#elif HC_ARCH_BITS == 32 
    764         pVCpu->hwaccm.s.svm.pfnVMRun = SVMVMSwitcherRun64; 
     764        pVCpu->hwaccm.s.svm.pfnVMRun = SVMR0VMSwitcherRun64; 
    765765#else 
    766         pVCpu->hwaccm.s.svm.pfnVMRun = SVMVMRun64; 
     766        pVCpu->hwaccm.s.svm.pfnVMRun = SVMR0VMRun64; 
    767767#endif 
    768768        /* Unconditionally update these as wrmsr might have changed them. (HWACCM_CHANGED_GUEST_SEGMENT_REGS will not be set) */ 
     
    775775        pVMCB->guest.u64EFER &= ~MSR_K6_EFER_LME; 
    776776 
    777         pVCpu->hwaccm.s.svm.pfnVMRun = SVMVMRun; 
     777        pVCpu->hwaccm.s.svm.pfnVMRun = SVMR0VMRun; 
    778778    } 
    779779 
     
    21552155    { 
    21562156        /* Manually invalidate the page for the VM's TLB. */ 
    2157         Log(("SVMInvlpgA %RGv ASID=%d\n", addr, uASID)); 
    2158         SVMInvlpgA(addr, uASID); 
     2157        Log(("SVMR0InvlpgA %RGv ASID=%d\n", addr, uASID)); 
     2158        SVMR0InvlpgA(addr, uASID); 
    21592159        return VINF_SUCCESS; 
    21602160    } 
     
    22372237 
    22382238        STAM_COUNTER_INC(&pVCpu->hwaccm.s.StatFlushPageManual); 
    2239         SVMInvlpgA(GCVirt, pVMCB->ctrl.TLBCtrl.n.u32ASID); 
     2239        SVMR0InvlpgA(GCVirt, pVMCB->ctrl.TLBCtrl.n.u32ASID); 
    22402240    } 
    22412241    return VINF_SUCCESS; 
     
    22622262#ifdef HC_ARCH_BITS == 32 
    22632263/** 
    2264  * Prepares for and executes VMRUN (64 bits guests). 
     2264 * Prepares for and executes VMRUN (64 bits guests from a 32 bits hosts). 
    22652265 * 
    22662266 * @returns VBox status code. 
     
    22692269 * @param   pCtx            Guest context. 
    22702270 */ 
    2271 DECLASM(int) SVMVMSwitcherRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx) 
     2271DECLASM(int) SVMR0VMSwitcherRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx) 
    22722272{ 
    22732273    return VERR_NOT_IMPLEMENTED; 
  • trunk/src/VBox/VMM/VMMR0/HWSVMR0.h

    r13883 r14366  
    138138VMMR0DECL(int) SVMR0LoadGuestState(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx); 
    139139 
     140/**  
     141 * Prepares for and executes VMRUN (32 bits guests).  
     142 *  
     143 * @returns VBox status code.  
     144 * @param   pVMCBHostPhys   Physical address of host VMCB.  
     145 * @param   pVMCBPhys       Physical address of the VMCB.  
     146 * @param   pCtx            Guest context.  
     147 */  
     148DECLASM(int) SVMR0VMRun(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx);  
     149 
     150/**  
     151 * Prepares for and executes VMRUN (64 bits guests).  
     152 *  
     153 * @returns VBox status code.  
     154 * @param   pVMCBHostPhys   Physical address of host VMCB.  
     155 * @param   pVMCBPhys       Physical address of the VMCB.  
     156 * @param   pCtx            Guest context.  
     157 */  
     158DECLASM(int) SVMR0VMRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx);  
     159 
     160/** 
     161 * Prepares for and executes VMRUN (64 bits guests from a 32 bits hosts). 
     162 * 
     163 * @returns VBox status code. 
     164 * @param   pVMCBHostPhys   Physical address of host VMCB. 
     165 * @param   pVMCBPhys       Physical address of the VMCB. 
     166 * @param   pCtx            Guest context. 
     167 */ 
     168DECLASM(int) SVMR0VMSwitcherRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx); 
     169 
     170/** 
     171 * Executes INVLPGA. 
     172 * 
     173 * @param   pPageGC         Virtual page to invalidate. 
     174 * @param   u32ASID         Tagged TLB id. 
     175 */ 
     176DECLASM(void) SVMR0InvlpgA(RTGCPTR pPageGC, uint32_t u32ASID); 
    140177 
    141178/** Convert hidden selector attribute word between VMX and SVM formats. */ 
  • trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp

    r14308 r14366  
    33513351    } 
    33523352} 
     3353 
     3354#if HC_ARCH_BITS == 32 
     3355/** 
     3356 * Prepares for and executes VMLAUNCH (64 bits guest mode) 
     3357 * 
     3358 * @returns VBox status code 
     3359 * @param   fResume     vmlauch/vmresume 
     3360 * @param   pCtx        Guest context 
     3361 */ 
     3362DECLASM(int) VMXR0SwitcherStartVM64(RTHCUINT fResume, PCPUMCTX pCtx) 
     3363{ 
     3364    return VERR_NOT_IMPLEMENTED; 
     3365} 
     3366#endif 
     3367 
     3368 
  • trunk/src/VBox/VMM/VMMR0/HWVMXR0.h

    r13883 r14366  
    208208DECLASM(int) VMXR0StartVM64(RTHCUINT fResume, PCPUMCTX pCtx); 
    209209 
     210/** 
     211 * Prepares for and executes VMLAUNCH (64 bits guest mode) 
     212 * 
     213 * @returns VBox status code 
     214 * @param   fResume     vmlauch/vmresume 
     215 * @param   pCtx        Guest context 
     216 */ 
     217DECLASM(int) VMXR0SwitcherStartVM64(RTHCUINT fResume, PCPUMCTX pCtx); 
     218 
    210219#endif /* IN_RING0 */ 
    211220 

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy