With a reliable steal time mechanism, we can tell if we're
out of the cpu for very long, differentiating from the case
that we simply got a real softlockup.

In the case we were out of cpu, the watchdog is fed, making
bogus softlockups disappear.

Signed-off-by: Glauber Costa <glom...@redhat.com>
---
 arch/x86/kernel/kvmclock.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
index a1f4852..1c496c8 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
@@ -104,6 +104,9 @@ cputime_t kvm_get_steal_time(void)
 
        delta = this_steal_info - *last_steal_info;
 
+       if (delta > 1000UL)
+               touch_softlockup_watchdog();
+
        *last_steal_info = this_steal_info;
        put_cpu_var(steal_info);
 
-- 
1.6.2.2

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to