You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ro...@apache.org on 2020/02/19 07:42:31 UTC

[cloudstack] branch 4.13 updated: kvm: Enable virtio drivers based on guest os display name (#3879)

This is an automated email from the ASF dual-hosted git repository.

rohit pushed a commit to branch 4.13
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.13 by this push:
     new 37d2b85  kvm: Enable virtio drivers based on guest os display name (#3879)
37d2b85 is described below

commit 37d2b8537c454cdafdaf240dba37a4e1767afe2e
Author: Wei Zhou <w....@global.leaseweb.com>
AuthorDate: Wed Feb 19 08:42:20 2020 +0100

    kvm: Enable virtio drivers based on guest os display name (#3879)
    
    When we add new guest os, sometimes we missed the records in guest_os_hypervisor.
    However, the guest disk model (virtio/ide) is determined by record in the table.
    It causes the issue that some new guest os(eg Debian 8/9) uses e1000 instead of virtio nic, and ide disk instead of virtio disk.
    
    To fix the issue permanantly, pass the guest os name in guest_os if the record for kvm is not found in guest_os_hypervisor.
    
    Related commit:7ac9f00eeeb4cd37ec39efeba066e799b581b1a0
---
 server/src/main/java/com/cloud/hypervisor/KVMGuru.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/server/src/main/java/com/cloud/hypervisor/KVMGuru.java b/server/src/main/java/com/cloud/hypervisor/KVMGuru.java
index 2b84ff9b..cf29a1a 100644
--- a/server/src/main/java/com/cloud/hypervisor/KVMGuru.java
+++ b/server/src/main/java/com/cloud/hypervisor/KVMGuru.java
@@ -132,7 +132,7 @@ public class KVMGuru extends HypervisorGuruBase implements HypervisorGuru {
             guestOsMapping = _guestOsHypervisorDao.findByOsIdAndHypervisor(guestOS.getId(), getHypervisorType().toString(), host.getHypervisorVersion());
         }
         if (guestOsMapping == null || host == null) {
-            to.setPlatformEmulator("Other");
+            to.setPlatformEmulator(guestOS.getDisplayName() == null ? "Other" : guestOS.getDisplayName());
         } else {
             to.setPlatformEmulator(guestOsMapping.getGuestOsName());
         }