VirtualBox

Changeset 94931 in vbox for trunk/src/VBox/VMM/tools


Ignore:
Timestamp:
May 9, 2022 8:24:47 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
151339
Message:

VMM/CPUM: Introduced a global variable g_CpumHostFeatures for keeping the host CPU features. This is safer than keeping this info in the shared part of the VM structure. bugref:10093

Location:
trunk/src/VBox/VMM/tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/tools/Makefile.kmk

    r93725 r94931  
    6262        VBoxCpuReport.cpp \
    6363        VBoxCpuReportMsrSup.cpp \
    64         ../VMMR3/CPUMR3CpuId.cpp
     64        ../VMMR3/CPUMR3CpuId.cpp \
     65        ../VMMAll/CPUMAllCpuId.cpp
    6566VBoxCpuReport_SOURCES.linux = \
    6667        VBoxCpuReportMsrLinux.cpp
  • trunk/src/VBox/VMM/tools/VBoxCpuReport.cpp

    r93515 r94931  
    44604460    if (!RTX86IsValidStdRange(uEax))
    44614461        return RTMsgErrorRc(VERR_NOT_SUPPORTED, "Invalid std CPUID range: %#x\n", uEax);
    4462     g_enmVendor = CPUMR3CpuIdDetectVendorEx(uEax, uEbx, uEcx, uEdx);
     4462    g_enmVendor = CPUMCpuIdDetectX86VendorEx(uEax, uEbx, uEcx, uEdx);
    44634463
    44644464    ASMCpuIdExSlow(1, 0, 0, 0, &uEax, &uEbx, &uEcx, &uEdx);
    4465     g_enmMicroarch = CPUMR3CpuIdDetermineMicroarchEx(g_enmVendor,
    4466                                                      RTX86GetCpuFamily(uEax),
    4467                                                      RTX86GetCpuModel(uEax, g_enmVendor == CPUMCPUVENDOR_INTEL),
    4468                                                      RTX86GetCpuStepping(uEax));
     4465    g_enmMicroarch = CPUMCpuIdDetermineX86MicroarchEx(g_enmVendor,
     4466                                                      RTX86GetCpuFamily(uEax),
     4467                                                      RTX86GetCpuModel(uEax, g_enmVendor == CPUMCPUVENDOR_INTEL),
     4468                                                      RTX86GetCpuStepping(uEax));
    44694469    g_fIntelNetBurst = CPUMMICROARCH_IS_INTEL_NETBURST(g_enmMicroarch);
    44704470
     
    45224522    PCPUMCPUIDLEAF  paLeaves;
    45234523    uint32_t        cLeaves;
    4524     int rc = CPUMR3CpuIdCollectLeaves(&paLeaves, &cLeaves);
     4524    int rc = CPUMCpuIdCollectLeavesX86(&paLeaves, &cLeaves);
    45254525    if (RT_FAILURE(rc))
    45264526        return RTMsgErrorRc(rc, "CPUMR3CollectCpuIdInfo failed: %Rrc\n", rc);
     
    46404640        return RTMsgErrorRc(VERR_NOT_SUPPORTED, "Invalid std CPUID range: %#x\n", uEax);
    46414641
    4642     CPUMCPUVENDOR enmVendor = CPUMR3CpuIdDetectVendorEx(uEax, uEbx, uEcx, uEdx);
     4642    CPUMCPUVENDOR enmVendor = CPUMCpuIdDetectX86VendorEx(uEax, uEbx, uEcx, uEdx);
    46434643    if (enmVendor == CPUMCPUVENDOR_UNKNOWN)
    46444644        return RTMsgErrorRc(VERR_NOT_IMPLEMENTED, "Unknown CPU vendor: %.4s%.4s%.4s\n", &uEbx, &uEdx, &uEcx);
    4645     vbCpuRepDebug("CPU Vendor: %s - %.4s%.4s%.4s\n", CPUMR3CpuVendorName(enmVendor), &uEbx, &uEdx, &uEcx);
     4645    vbCpuRepDebug("CPU Vendor: %s - %.4s%.4s%.4s\n", CPUMCpuVendorName(enmVendor), &uEbx, &uEdx, &uEcx);
    46464646
    46474647    /*
     
    46494649     */
    46504650    ASMCpuIdExSlow(1, 0, 0, 0, &uEax, &uEbx, &uEcx, &uEdx);
    4651     CPUMMICROARCH enmMicroarch = CPUMR3CpuIdDetermineMicroarchEx(enmVendor,
    4652                                                                  RTX86GetCpuFamily(uEax),
    4653                                                                  RTX86GetCpuModel(uEax, enmVendor == CPUMCPUVENDOR_INTEL),
    4654                                                                  RTX86GetCpuStepping(uEax));
     4651    CPUMMICROARCH enmMicroarch = CPUMCpuIdDetermineX86MicroarchEx(enmVendor,
     4652                                                                  RTX86GetCpuFamily(uEax),
     4653                                                                  RTX86GetCpuModel(uEax, enmVendor == CPUMCPUVENDOR_INTEL),
     4654                                                                  RTX86GetCpuStepping(uEax));
    46554655
    46564656    /*
     
    47944794
    47954795    CPUMUNKNOWNCPUID enmUnknownMethod;
    4796     CPUMCPUID       DefUnknown;
     4796    CPUMCPUID        DefUnknown;
    47974797    rc = CPUMR3CpuIdDetectUnknownLeafMethod(&enmUnknownMethod, &DefUnknown);
    47984798    if (RT_FAILURE(rc))
     
    48424842                   pszName,
    48434843                   pszCpuDesc,
    4844                    CPUMR3CpuVendorName(enmVendor),
     4844                   CPUMCpuVendorName(enmVendor),
    48454845                   RTX86GetCpuFamily(uEax),
    48464846                   RTX86GetCpuModel(uEax, enmVendor == CPUMCPUVENDOR_INTEL),
    48474847                   RTX86GetCpuStepping(uEax),
    4848                    CPUMR3MicroarchName(enmMicroarch),
     4848                   CPUMMicroarchName(enmMicroarch),
    48494849                   vbCpuRepGuessScalableBusFrequencyName(),
    48504850                   vbCpuRepGetPhysAddrWidth(),
Note: See TracChangeset for help on using the changeset viewer.

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