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

[Xen-devel] [Patch] Rate-limit timer ISR warning printks


  • To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Stephen Tweedie <sct@xxxxxxxxxx>
  • Date: Fri, 02 Dec 2005 15:10:11 -0500
  • Delivery-date: Fri, 02 Dec 2005 20:10:05 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Hi all,

Using a slow serial console with sync_console on SMP leaves me with an
unusable system: it gets into a flood of

Timer ISR/0: Time went backwards: delta=-3566279 cpu_delta=16433721
shadow=2019998373 off=420435384 processed=2444000000
cpu_processed=2424000000
 0: 2424000000
 1: 2444000000

messages which swamps the console and leaves things almost, but not
quite, completely hung.  It is a simple matter to ratelimit these
printks, which completely eliminates the problem for me.

Cheers,
 Stephen

# HG changeset patch
# User sct@xxxxxxxxxxxxxxxxxxxxx
# Node ID 6674d690ce99fc34e250d190c27721b292a5e6cf
# Parent  20326bcc4f3fd51a4bc2316f9ec1cbb6a7df3e16
Ratelimit the "Timer ISR/0: Time went backwards: delta=..." timekeeping
messages.  Synchronous serial console results in floods of these messages.

diff -r 20326bcc4f3f -r 6674d690ce99 arch/i386/xen/kernel/time.c
--- a/arch/i386/xen/kernel/time.c       Fri Dec  2 15:05:01 2005 -0500
+++ b/arch/i386/xen/kernel/time.c       Fri Dec  2 15:05:33 2005 -0500
@@ -567,7 +567,8 @@
        }
        while (!time_values_up_to_date(cpu));
 
-       if (unlikely(delta < -1000000LL) || unlikely(delta_cpu < 0)) {
+       if ((unlikely(delta < -1000000LL) || unlikely(delta_cpu < 0))
+           && printk_ratelimit()) {
                printk("Timer ISR/%d: Time went backwards: "
                       "delta=%lld cpu_delta=%lld shadow=%lld "
                       "off=%lld processed=%lld cpu_processed=%lld\n",
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.