[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [LINUX] Avoid triggering the softlockup BUG when offline for too long.
# HG changeset patch # User kfraser@xxxxxxxxxxxxxxxxxxxxx # Node ID 53795f0a41b116d0fb428bd3ee4a099b42fca97f # Parent f32abd365ae006e4dfda7ec206a9955b3cd57da2 [LINUX] Avoid triggering the softlockup BUG when offline for too long. After being offline for a long time, the softlockup watchdog triggers a BUG() on our faces. This is expected, as in fact, we spent more than a fixed 10*HZ amount of time without touching the watchdog. However, by inspecting the contents of stolen inside timer irq handler, we can gain awareness of the fact, and do better than that. Signed-off-by: Glauber de Oliveira Costa <gcosta@xxxxxxxxxx> --- linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c | 4 ++++ 1 files changed, 4 insertions(+) diff -r f32abd365ae0 -r 53795f0a41b1 linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c --- a/linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c Wed Nov 29 12:04:49 2006 +0000 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c Wed Nov 29 12:16:59 2006 +0000 @@ -709,6 +709,10 @@ irqreturn_t timer_interrupt(int irq, voi account_system_time(current, HARDIRQ_OFFSET, (cputime_t)delta_cpu); } + + /* Offlined for more than a few seconds? Avoid lockup warnings. */ + if (stolen > 5*HZ) + touch_softlockup_watchdog(); /* Local timer processing (see update_process_times()). */ run_local_timers(); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |