[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0812031253060.6817@blonde.anvils>
Date: Wed, 3 Dec 2008 13:04:17 +0000 (GMT)
From: Hugh Dickins <hugh@...itas.com>
To: Andrew Morton <akpm@...ux-foundation.org>
cc: nickpiggin@...oo.com.au, davej@...hat.com, arjan@...radead.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: [PATCH 7/8] badpage: ratelimit print_bad_pte and bad_page
On Tue, 2 Dec 2008, Andrew Morton wrote:
> On Mon, 1 Dec 2008 00:46:53 +0000 (GMT)
> Hugh Dickins <hugh@...itas.com> wrote:
> > + /*
> > + * Allow a burst of 60 reports, then keep quiet for that minute;
> > + * or allow a steady drip of one report per second.
> > + */
> > + if (nr_shown == 60) {
> > + if (time_before(jiffies, resume)) {
> > + nr_unshown++;
> > + goto out;
> > + }
> > + if (nr_unshown) {
> > + printk(KERN_EMERG
> > + "Bad page state: %lu messages suppressed\n",
> > + nr_unshown);
> > + nr_unshown = 0;
> > + }
> > + nr_shown = 0;
> > + }
> > + if (nr_shown++ == 0)
> > + resume = jiffies + 60 * HZ;
> > +
>
> gee, that's pretty elaborate. There's no way of using the
> possibly-enhanced ratelimit.h?
Thanks a lot for the pointer: I'd browsed around kernel/printk.c and
not found what I needed, hadn't realized there's a lib/ratelimit.c.
It looks eerily like what I'm trying to do, just a less specific
missed/suppressed message, never mind that. I'll try making a patch
later to replace this (in its subsequent KERN_ALERT form) by that -
in doing so, perhaps I'll encounter a problem, but should be good.
Hugh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists