VirtualBox

Changeset 15390 in vbox


Ignore:
Timestamp:
Dec 12, 2008 5:33:23 PM (16 years ago)
Author:
vboxsync
Message:

X86_CPUID_AMD_FEATURE_EDX_SEP not set it seems in 32 bits mode. (Intel)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/CPUMAllRegs.cpp

    r14870 r15390  
    13581358                ||  !(ASMCpuId_EDX(0x80000001) & X86_CPUID_AMD_FEATURE_EDX_SEP))
    13591359            {
    1360                 LogRel(("WARNING: Can't turn on SYSCALL/SYSRET when the host doesn't support it!!\n"));
    1361                 return;
     1360#if HC_ARCH_BITS == 32
     1361                /* X86_CPUID_AMD_FEATURE_EDX_SEP not set it seems in 32 bits mode.
     1362                 * Even when the cpu is capable of doing so in 64 bits mode.
     1363                 */
     1364                if (    pVM->cpum.s.aGuestCpuIdExt[0].eax < 0x80000001
     1365                    ||  !(ASMCpuId_EDX(0x80000001) & X86_CPUID_AMD_FEATURE_EDX_LONG_MODE)
     1366                    ||  !(ASMCpuId_EDX(1) & X86_CPUID_FEATURE_EDX_SEP))
     1367#endif
     1368                {
     1369                    LogRel(("WARNING: Can't turn on SYSCALL/SYSRET when the host doesn't support it!!\n"));
     1370                    return;
     1371                }
    13621372            }
    13631373            /* Valid for both Intel and AMD CPUs, although only in 64 bits mode for Intel. */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette