]> xenbits.xensource.com Git - libvirt.git/commitdiff
esx: Add VMCI device for virtualHW >= 7
authorDawid Zamirski <dzamirski@datto.com>
Mon, 23 May 2016 21:22:54 +0000 (17:22 -0400)
committerMatthias Bolte <matthias.bolte@googlemail.com>
Thu, 26 May 2016 09:17:06 +0000 (11:17 +0200)
This patch fixes an issue where vMotion fails when VMCI device is not
present in the vmx file.

src/vmx/vmx.c
tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.vmx
tests/xml2vmxdata/xml2vmx-serial-network-client.vmx
tests/xml2vmxdata/xml2vmx-serial-network-server.vmx
tests/xml2vmxdata/xml2vmx-ws-in-the-wild-1.vmx
tests/xml2vmxdata/xml2vmx-ws-in-the-wild-2.vmx

index f2ce4bf4638009f5438d1f3b304dbd0afa9f46ec..47275032518561867179ff679cc8497aca8c1f66 100644 (file)
@@ -3383,24 +3383,28 @@ virVMXFormatConfig(virVMXContext *ctx, virDomainXMLOptionPtr xmlopt, virDomainDe
             goto cleanup;
     }
 
-    if (virtualHW_version >= 7 && hasSCSI) {
-        virBufferAddLit(&buffer, "pciBridge0.present = \"true\"\n");
+    if (virtualHW_version >= 7) {
+        if (hasSCSI) {
+            virBufferAddLit(&buffer, "pciBridge0.present = \"true\"\n");
 
-        virBufferAddLit(&buffer, "pciBridge4.present = \"true\"\n");
-        virBufferAddLit(&buffer, "pciBridge4.virtualDev = \"pcieRootPort\"\n");
-        virBufferAddLit(&buffer, "pciBridge4.functions = \"8\"\n");
+            virBufferAddLit(&buffer, "pciBridge4.present = \"true\"\n");
+            virBufferAddLit(&buffer, "pciBridge4.virtualDev = \"pcieRootPort\"\n");
+            virBufferAddLit(&buffer, "pciBridge4.functions = \"8\"\n");
 
-        virBufferAddLit(&buffer, "pciBridge5.present = \"true\"\n");
-        virBufferAddLit(&buffer, "pciBridge5.virtualDev = \"pcieRootPort\"\n");
-        virBufferAddLit(&buffer, "pciBridge5.functions = \"8\"\n");
+            virBufferAddLit(&buffer, "pciBridge5.present = \"true\"\n");
+            virBufferAddLit(&buffer, "pciBridge5.virtualDev = \"pcieRootPort\"\n");
+            virBufferAddLit(&buffer, "pciBridge5.functions = \"8\"\n");
 
-        virBufferAddLit(&buffer, "pciBridge6.present = \"true\"\n");
-        virBufferAddLit(&buffer, "pciBridge6.virtualDev = \"pcieRootPort\"\n");
-        virBufferAddLit(&buffer, "pciBridge6.functions = \"8\"\n");
+            virBufferAddLit(&buffer, "pciBridge6.present = \"true\"\n");
+            virBufferAddLit(&buffer, "pciBridge6.virtualDev = \"pcieRootPort\"\n");
+            virBufferAddLit(&buffer, "pciBridge6.functions = \"8\"\n");
 
-        virBufferAddLit(&buffer, "pciBridge7.present = \"true\"\n");
-        virBufferAddLit(&buffer, "pciBridge7.virtualDev = \"pcieRootPort\"\n");
-        virBufferAddLit(&buffer, "pciBridge7.functions = \"8\"\n");
+            virBufferAddLit(&buffer, "pciBridge7.present = \"true\"\n");
+            virBufferAddLit(&buffer, "pciBridge7.virtualDev = \"pcieRootPort\"\n");
+            virBufferAddLit(&buffer, "pciBridge7.functions = \"8\"\n");
+        }
+
+        virBufferAddLit(&buffer, "vmci0.present = \"true\"\n");
     }
 
     /* Get final VMX output */
index ab09bc926d73b6fa153e1ef45a800e66600a51f9..9605e2d6ac4597208776b8b03adc10f72b82c1aa 100644 (file)
@@ -41,3 +41,4 @@ pciBridge6.functions = "8"
 pciBridge7.present = "true"
 pciBridge7.virtualDev = "pcieRootPort"
 pciBridge7.functions = "8"
+vmci0.present = "true"
index 00ed186457d2ddc56e815cd44c4978a32f6970af..5e219030953d196339f8bce7c98390cbd8ee6ae3 100644 (file)
@@ -13,3 +13,4 @@ serial0.fileType = "network"
 serial0.fileName = "tcp://192.168.0.17:42001"
 serial0.network.endPoint = "client"
 serial0.yieldOnMsrRead = "true"
+vmci0.present = "true"
index ff2384f24ed5751dd23f8c6dbfb8f1294406731b..e65f1758827472c93fed56feb7527e2659549395 100644 (file)
@@ -13,3 +13,4 @@ serial0.fileType = "network"
 serial0.fileName = "ssl://0.0.0.0:42001"
 serial0.network.endPoint = "server"
 serial0.yieldOnMsrRead = "true"
+vmci0.present = "true"
index acdf7721a9e2ded31c44a6117a5c9e10418b0413..b43c933666585edae18957bd393e52f43246352a 100644 (file)
@@ -33,3 +33,4 @@ pciBridge6.functions = "8"
 pciBridge7.present = "true"
 pciBridge7.virtualDev = "pcieRootPort"
 pciBridge7.functions = "8"
+vmci0.present = "true"
index 50866054673c47d449791ef8f595e78b247a22e0..f7f40ec30054a9ebbfd2382de7b397d02041dd11 100644 (file)
@@ -33,3 +33,4 @@ pciBridge6.functions = "8"
 pciBridge7.present = "true"
 pciBridge7.virtualDev = "pcieRootPort"
 pciBridge7.functions = "8"
+vmci0.present = "true"