Changeset 15439 in vbox
- Timestamp:
- Dec 13, 2008 12:48:22 PM (16 years ago)
- Location:
- trunk/src/VBox
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/ConsoleImpl2.cpp
r15404 r15439 219 219 /* Indicate whether 64-bit guests are supported or not. */ 220 220 /** @todo This is currently only forced off on 32-bit hosts only because it 221 * makes a lof of differ nese there (REM and Solaris performance). This222 * will later be done on all platforms, see @bugref{3383}. */221 * makes a lof of difference there (REM and Solaris performance). 222 */ 223 223 224 224 Bstr osTypeId; … … 243 243 #endif 244 244 } 245 #if ARCH_BITS == 32 /* Until we've got a check box on/off thing, 32-bitonly. */245 #if ARCH_BITS == 32 /* 32-bit guests only. */ 246 246 else 247 247 { -
trunk/src/VBox/VMM/HWACCM.cpp
r15414 r15439 215 215 pVM->fHWACCMEnabled = true; 216 216 217 #if def VBOX_WITH_HYBRID_32BIT_KERNEL217 #if HC_ARCH_BITS == 32 218 218 /* 64-bit mode is configurable and it depends on both the kernel mode and VT-x. 219 219 * (To use the default, don't set 64bitEnabled in CFGM.) */ 220 rc = CFGMR3QueryBoolDef(pHWVirtExt, "64bitEnabled", &pVM->hwaccm.s.fAllow64BitGuests, 221 VMMIsHwVirtExtForced(pVM) && SUPGetPagingMode() >= SUPPAGINGMODE_AMD64); 220 rc = CFGMR3QueryBoolDef(pHWVirtExt, "64bitEnabled", &pVM->hwaccm.s.fAllow64BitGuests, false); 222 221 AssertLogRelRCReturn(rc, rc); 223 222 if (pVM->hwaccm.s.fAllow64BitGuests) 224 223 { 224 # ifdef RT_OS_DARWIN 225 225 if (!VMMIsHwVirtExtForced(pVM)) 226 return VM_SET_ERROR(pVM, VERR_INVALID_PARAMETER, "64-bit was requested without also enabling VT-x."); 227 LogRel(( "HWACCM: Enabled support for 64-bit guests.\n")); 228 } 226 # else 227 if (!pVM->hwaccm.s.fAllowed) 228 # endif 229 return VM_SET_ERROR(pVM, VERR_INVALID_PARAMETER, "64-bit guest support was requested without also enabling VT-x."); 230 } 231 #else 232 /* We always allow 64 bits guests on 64 bits hosts. */ 233 pVM->hwaccm.s.fAllow64BitGuests = true; 229 234 #endif 230 235 … … 820 825 CPUMSetGuestCpuIdFeature(pVM, CPUMCPUIDFEATURE_SEP); 821 826 #ifdef VBOX_ENABLE_64_BITS_GUESTS 822 # ifdef VBOX_WITH_HYBRID_32BIT_KERNEL /* remove */823 827 if (pVM->hwaccm.s.fAllow64BitGuests) 824 # endif825 828 { 826 829 CPUMSetGuestCpuIdFeature(pVM, CPUMCPUIDFEATURE_PAE); … … 832 835 #endif 833 836 LogRel(("HWACCM: VMX enabled!\n")); 834 #if defined(VBOX_ENABLE_64_BITS_GUESTS) && defined(VBOX_WITH_HYBRID_32BIT_KERNEL)835 837 LogRel((pVM->hwaccm.s.fAllow64BitGuests 836 838 ? "HWACCM: 32-bit and 64-bit guest supported.\n" 837 839 : "HWACCM: 32-bit guest supported.\n")); 838 #endif839 840 if (pVM->hwaccm.s.fNestedPaging) 840 841 { … … 935 936 CPUMSetGuestCpuIdFeature(pVM, CPUMCPUIDFEATURE_RDTSCP); 936 937 #ifdef VBOX_ENABLE_64_BITS_GUESTS 937 # ifdef VBOX_WITH_HYBRID_32BIT_KERNEL938 938 if (pVM->hwaccm.s.fAllow64BitGuests) 939 # endif940 939 { 941 940 CPUMSetGuestCpuIdFeature(pVM, CPUMCPUIDFEATURE_PAE); … … 945 944 } 946 945 #endif 946 LogRel((pVM->hwaccm.s.fAllow64BitGuests 947 ? "HWACCM: 32-bit and 64-bit guest supported.\n" 948 : "HWACCM: 32-bit guest supported.\n")); 947 949 } 948 950 else -
trunk/src/VBox/VMM/HWACCMInternal.h
r15414 r15439 35 35 #include <iprt/mp.h> 36 36 37 #if HC_ARCH_BITS == 64 || defined(VBOX_WITH_HYBRID_32BIT_KERNEL) //|| defined (VBOX_WITH_64_BITS_GUESTS)37 #if HC_ARCH_BITS == 64 || defined(VBOX_WITH_HYBRID_32BIT_KERNEL) || defined (VBOX_WITH_64_BITS_GUESTS) 38 38 /* Enable 64 bits guest support. */ 39 39 # define VBOX_ENABLE_64_BITS_GUESTS … … 201 201 bool fInjectNMI; 202 202 203 #ifdef VBOX_WITH_HYBRID_32BIT_KERNEL204 203 /** Set if we can support 64-bit guests or not. */ 205 204 bool fAllow64BitGuests; 206 #endif207 205 208 206 /** Explicit alignment padding to make 32-bit gcc align u64RegisterMask 209 207 * naturally. */ 210 #ifdef VBOX_WITH_HYBRID_32BIT_KERNEL211 208 bool padding[1]; 212 #else213 bool padding[2];214 #endif215 209 216 210 /** And mask for copying register contents. */ … … 220 214 RTUINT uMaxASID; 221 215 222 #if HC_ARCH_BITS == 32 && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)216 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 223 217 /** 32 to 64 bits switcher entrypoint. */ 224 218 R0PTRTYPE(PFNHWACCMSWITCHERHC) pfnHost32ToGuest64R0; -
trunk/src/VBox/VMM/VMMR0/CPUMR0.cpp
r15417 r15439 168 168 } 169 169 170 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)170 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 171 171 if (CPUMIsGuestInLongModeEx(pCtx)) 172 172 { … … 258 258 AssertReturn((pVCpu->cpum.s.fUseFlags & CPUM_USED_FPU), VINF_SUCCESS); 259 259 260 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)260 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 261 261 if (CPUMIsGuestInLongModeEx(pCtx)) 262 262 { … … 321 321 322 322 /* Save the guest's debug state. The caller is responsible for DR7. */ 323 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)323 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 324 324 if (CPUMIsGuestInLongModeEx(pCtx)) 325 325 { … … 397 397 398 398 /* Activate the guest state DR0-3; DR7 is left to the caller. */ 399 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)399 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 400 400 if (CPUMIsGuestInLongModeEx(pCtx)) 401 401 { -
trunk/src/VBox/VMM/VMMR0/HWACCMR0.cpp
r15414 r15439 1071 1071 1072 1072 1073 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)1073 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 1074 1074 /** 1075 1075 * Save guest FPU/XMM state (64 bits guest mode & 32 bits host only) -
trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp
r15414 r15439 2298 2298 } 2299 2299 2300 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)2300 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 2301 2301 /** 2302 2302 * Prepares for and executes VMRUN (64 bits guests from a 32 bits hosts). … … 2355 2355 } 2356 2356 2357 #endif /* HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) */2357 #endif /* HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) */ -
trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp
r15414 r15439 3509 3509 } 3510 3510 3511 #if HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)3511 #if HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 3512 3512 /** 3513 3513 * Prepares for and executes VMLAUNCH (64 bits guest mode) … … 3628 3628 } 3629 3629 3630 #endif /* HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) */3630 #endif /* HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) */ 3631 3631 3632 3632 -
trunk/src/VBox/VMM/VMMR0/VMMR0.cpp
r15414 r15439 925 925 926 926 927 #if defined(DEBUG) && HC_ARCH_BITS == 32 && defined(VBOX_ WITH_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL)927 #if defined(DEBUG) && HC_ARCH_BITS == 32 && defined(VBOX_ENABLE_64_BITS_GUESTS) && !defined(VBOX_WITH_HYBRID_32BIT_KERNEL) 928 928 case VMMR0_DO_TEST_SWITCHER3264: 929 929 return HWACCMR0TestSwitcher3264(pVM);
Note:
See TracChangeset
for help on using the changeset viewer.