VirtualBox

忽略:
時間撮記:
2015-4-1 上午10:23:23 (10 年 以前)
作者:
vboxsync
訊息:

Main/ConsoleImpl2: disable GIM for raw-mode VMs for now.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp

    r55022 r55068  
    11851185        /*
    11861186         * Paravirt. provider.
     1187         * Currently only enabled for HM VMs as raw-mode GIM still needs work.
    11871188         */
    11881189        PCFGMNODE pParavirtNode;
     
    11901191        const char *pcszParavirtProvider;
    11911192        bool fGimDeviceNeeded = true;
    1192         switch (paravirtProvider)
    1193         {
    1194             case ParavirtProvider_None:
    1195                 pcszParavirtProvider = "None";
    1196                 fGimDeviceNeeded = false;
    1197                 break;
    1198 
    1199             case ParavirtProvider_Minimal:
    1200                 pcszParavirtProvider = "Minimal";
    1201                 break;
    1202 
    1203             case ParavirtProvider_HyperV:
    1204                 pcszParavirtProvider = "HyperV";
    1205                 break;
    1206 
    1207             case ParavirtProvider_KVM:
    1208                 pcszParavirtProvider = "KVM";
    1209                 break;
    1210 
    1211             default:
    1212                 AssertMsgFailed(("Invalid paravirtProvider=%d\n", paravirtProvider));
    1213                 return VMR3SetError(pUVM, VERR_INVALID_PARAMETER, RT_SRC_POS, N_("Invalid paravirt. provider '%d'"),
    1214                                     paravirtProvider);
    1215         }
    1216         InsertConfigString(pParavirtNode, "Provider", pcszParavirtProvider);
     1193        if (fHMEnabled)
     1194        {
     1195            switch (paravirtProvider)
     1196            {
     1197                case ParavirtProvider_None:
     1198                    pcszParavirtProvider = "None";
     1199                    fGimDeviceNeeded = false;
     1200                    break;
     1201
     1202                case ParavirtProvider_Minimal:
     1203                    pcszParavirtProvider = "Minimal";
     1204                    break;
     1205
     1206                case ParavirtProvider_HyperV:
     1207                    pcszParavirtProvider = "HyperV";
     1208                    break;
     1209
     1210                case ParavirtProvider_KVM:
     1211                    pcszParavirtProvider = "KVM";
     1212                    break;
     1213
     1214                default:
     1215                    AssertMsgFailed(("Invalid paravirtProvider=%d\n", paravirtProvider));
     1216                    return VMR3SetError(pUVM, VERR_INVALID_PARAMETER, RT_SRC_POS, N_("Invalid paravirt. provider '%d'"),
     1217                                        paravirtProvider);
     1218            }
     1219            InsertConfigString(pParavirtNode, "Provider", pcszParavirtProvider);
     1220        }
     1221        else
     1222            InsertConfigString(pParavirtNode, "Provider", "None");
    12171223
    12181224        /*
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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