[gnome-continuous-yocto/gnomeostree-3.28-rocko: 65/218] runqemu: Add workaround for APIC hang on pre 4.15 kernels on qemux86



commit 92e9b46f3ca316d18aa7de499a59c3d7f12c93d8
Author: Richard Purdie <richard purdie linuxfoundation org>
Date:   Tue Jan 2 11:36:53 2018 +0000

    runqemu: Add workaround for APIC hang on pre 4.15 kernels on qemux86
    
    On pre 4.15 host kernels, an APIC window emulation bug can cause qemu
    to hang. On 64 bit we can use the x2apic, for 32 bit, we just have to
    disable the other timer sources and rely on kvm-clock.
    
    [YOCTO #12301]
    
    (From OE-Core rev: 04646ed7edf020b73c6639a1a7445252cf7aad5e)
    
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
    (cherry picked from commit 82e67b82ea8e12aa0b7b9db1d84fec0436dec71b)
    Signed-off-by: Armin Kuster <akuster808 gmail com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 scripts/runqemu |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/scripts/runqemu b/scripts/runqemu
index 0b6daf2..0ed1eec 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -508,6 +508,11 @@ class BaseConfig(object):
 
         if os.access(dev_kvm, os.W_OK|os.R_OK):
             self.qemu_opt_script += ' -enable-kvm'
+            if self.get('MACHINE') == "qemux86":
+                # Workaround for broken APIC window on pre 4.15 host kernels which causes boot hangs
+                # See YOCTO #12301
+                # On 64 bit we use x2apic
+                self.kernel_cmdline_script += " clocksource=kvm-clock hpet=disable noapic nolapic"
         else:
             logger.error("You have no read or write permission on /dev/kvm.")
             logger.error("Please change the ownership of this file as described at:")


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]