From: Borislav Petkov <bp@alien8.de>
To: Ingo Molnar <mingo@kernel.org>
Cc: "Linus Torvalds" <torvalds@linux-foundation.org>,
"Steven Rostedt" <rostedt@goodmis.org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Peter Zijlstra" <peterz@infradead.org>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
"Franck Bui" <fbui@suse.com>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH -v2 1/2] ratelimit: Extend to print suppressed messages on release
Date: Fri, 1 Jul 2016 11:07:40 +0200 [thread overview]
Message-ID: <20160701090740.GB4593@pd.tnic> (raw)
In-Reply-To: <20160701082247.GA27709@gmail.com>
On Fri, Jul 01, 2016 at 10:22:47AM +0200, Ingo Molnar wrote:
> > +/* issue num suppressed message on exit */
> > +#define RATELIMIT_MSG_ON_RELEASE BIT(0)
>
> So this flag says that we should issue a ratelimit message when it occurs.
This flag says that we should print the ratelimit message when we
release the ratelimit state, i.e., devkmsg_release() for example.
> But here we print the message if the RATELIMIT_MSG_ON_RELEASE bit is zero.
> Is that intentional?
Sure, we want to dump the ratelimited messages only when we release the
ratelimit state.
> Also, while we are changing it, I'd like to suggest a different message - it's
> talking about 'callbacks' but there's no callback here - we are skipping kernel
> log messages. So how about:
>
> pr_warn("%s: %d kernel log lines skipped, due to rate-limiting.\n"
Well, I'm not sure: even though the majority of the ratelimit usage is
printing stuff and it has been carved out from printk.c, it still is a
generic facility and you probably want to ratelimit other things too
with it, like polling for something or whatnot.
[ Whether it is really usable for something else besides ratelimiting
printk is a whole another question, of course. ]
And ___ratelimit() itself gets a function name as arg so there you
*really* *have* callbacks so %d callbacks suppressed\n" is actually
correct.
I guess I can make the RATELIMIT_MSG_ON_RELEASE message more generic:
static inline void ratelimit_state_exit(struct ratelimit_state *rs)
{
if (!(rs->flags & RATELIMIT_MSG_ON_RELEASE))
return;
if (rs->missed)
printk(KERN_WARNING "%s: %d output lines suppressed due to ratelimiting\n",
current->comm, rs->missed);
}
?
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
next prev parent reply other threads:[~2016-07-01 9:18 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-29 9:55 [PATCH -v2 0/2] printk.kmsg: Ratelimit it by default Borislav Petkov
2016-06-29 9:56 ` [PATCH -v2 1/2] ratelimit: Extend to print suppressed messages on release Borislav Petkov
2016-06-29 10:24 ` Joe Perches
2016-06-29 14:25 ` Borislav Petkov
2016-07-01 8:22 ` Ingo Molnar
2016-07-01 9:07 ` Borislav Petkov [this message]
2016-07-01 10:17 ` Ingo Molnar
2016-07-01 10:29 ` Borislav Petkov
2016-07-01 10:38 ` Ingo Molnar
2016-06-29 9:56 ` [PATCH -v2 2/2] printk: Add kernel parameter to control writes to /dev/kmsg Borislav Petkov
2016-07-01 9:04 ` Ingo Molnar
2016-07-01 9:17 ` Borislav Petkov
2016-07-01 10:20 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160701090740.GB4593@pd.tnic \
--to=bp@alien8.de \
--cc=akpm@linux-foundation.org \
--cc=fbui@suse.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=torvalds@linux-foundation.org \
--cc=u.kleine-koenig@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox