** 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 <[email protected]>
+ 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
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs