** Description changed: - This series from linux-next prevents guest hangs when ntpd is running - on the host. - - The following changes since commit 736667efc11e42284c0572d8cc9a3aa4a1842b55: - - i40e/i40evf: Bump i40e to 1.4.25 and i40evf to 1.4.15 (2016-02-19 - 16:22:01 -0700) - - are available in the git repository at: - - git://kernel.ubuntu.com/dannf/ubuntu-xenial.git hrtimer-C_M_R - - for you to fetch changes up to 7dd9854d8674144013c3678bceba1b6a626db36d: - - KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW (2016-02-22 - 13:13:18 -0700) + SRU Justification: + + Impact: KVM guests hang on arm64 host running ntpd + + Fix: From linux-next: + commit 1c5631c73fc2261a5df64a72c155cb53dcdc0c45 + Author: Marc Zyngier <marc.zyng...@arm.com> + Date: Wed Apr 6 09:37:22 2016 +0100 + + KVM: arm/arm64: Handle forward time correction gracefully + + BugLink: http://bugs.launchpad.net/bugs/1549494 + + On a host that runs NTP, corrections can have a direct impact on + the background timer that we program on the behalf of a vcpu. + + In particular, NTP performing a forward correction will result in + a timer expiring sooner than expected from a guest point of view. + Not a big deal, we kick the vcpu anyway. + + But on wake-up, the vcpu thread is going to perform a check to + find out whether or not it should block. And at that point, the + timer check is going to say "timer has not expired yet, go back + to sleep". This results in the timer event being lost forever. + + There are multiple ways to handle this. One would be record that + the timer has expired and let kvm_cpu_has_pending_timer return + true in that case, but that would be fairly invasive. Another is + to check for the "short sleep" condition in the hrtimer callback, + and restart the timer for the remaining time when the condition + is detected. + + This patch implements the latter, with a bit of refactoring in + order to avoid too much code duplication. + + Testcase: + A) Install ntp on the host (I'm using a 2 socket ThunderX) + B) Boot up a large VM (95 CPUs/4G memory) + C) Within the VM, rebuild the Ubuntu kernel package + If it doesn't hang - bug is gone.
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1549494 Title: arm64: guest hangs when ntpd is running To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1549494/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs