From: Ingo Molnar <mingo@elte.hu>
To: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Andi Kleen <andi@firstfloor.org>,
Andrew Morton <akpm@linux-foundation.org>,
torvalds@linux-foundation.org, tglx@linutronix.de,
marcin.slusarz@gmail.com, linux-kernel@vger.kernel.org,
davem@davemloft.net, rostedt@goodmis.org,
paulmck@linux.vnet.ibm.com
Subject: Re: [PATCH] printk: robustify printk
Date: Mon, 11 Aug 2008 14:02:31 +0200 [thread overview]
Message-ID: <20080811120231.GC23529@elte.hu> (raw)
In-Reply-To: <1218453726.10800.63.camel@twins>
* Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> > The problem is that it means any printk data output that is more
> > than DMESG-BUFFER-SIZE bytes during one clock tick is going to lose
> > data. It loses the natural adaption to higher printk rates that you
> > got previously.
> >
> > Now we could say that for debugging etc. people should switch to
> > other mechanisms like relayfs, but I would still worry about some
> > corner cases where losing printk data that wasn't lost before could
> > be a severe regression (e.g. consider firewall log messages or
> > similar)
That's a rather misleading argument, because klogd as it stands today is
already lossy: you can overflow it with enough printk data. (It's rather
easy to trigger it as well, so nobody sane relies on it as a reliable
channel.)
Using relayfs and dynamic buffers would be a much worse approach because
if we are out of buffer space it would be a robustness disaster to start
allocating more RAM. (we want less coupling of printk to other kernel
subsystems, not more coupling) Preallocating wont help either because it
doesnt protect against sudden spikes.
> You only loose the msgs with klogd, console still gets everything. If
> firewalls are generating that much data, perhaps its time to think
> about alternative ways to channel that.
yeah, and note that klogd as it stands today is a lossy channel no
matter what - there's nothing that keeps a really verbose kernel from
flooding the buffer.
The issue Andi raises is largely independent of this change and there's
three clean options to deal with it:
- increase buffering (already possible, see CONFIG_LOG_BUF_SHIFT)
- create a more reliable klogd channel with a dynamically
shrinking/growing buffer (i very much doubt the complexity is
worth it, and this one wont be 100% loss-less either)
- use a reliable console
#1 is what distros use to maximize the yield of user bugreports, and #3
is what everyone who ultimately cares about massive printk output and
reliable logging uses.
Ingo
next prev parent reply other threads:[~2008-08-11 12:03 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-24 12:24 [PATCH 0/2] printk vs rq->lock and xtime lock Peter Zijlstra
2008-03-24 12:24 ` [PATCH 1/2] printk_nowakeup() Peter Zijlstra
2008-03-24 12:24 ` [PATCH 2/2] time: xtime lock vs printk Peter Zijlstra
2008-03-24 14:21 ` Daniel Walker
2008-03-24 14:31 ` [PATCH 0/2] printk vs rq->lock and xtime lock Marcin Slusarz
2008-03-24 17:58 ` Linus Torvalds
2008-03-24 18:15 ` Peter Zijlstra
2008-03-24 18:57 ` Andrew Morton
2008-08-08 13:30 ` Peter Zijlstra
2008-08-08 13:46 ` Peter Zijlstra
2008-08-08 16:41 ` Linus Torvalds
2008-08-08 17:10 ` Peter Zijlstra
2008-08-08 17:25 ` Linus Torvalds
2008-08-08 17:40 ` Peter Zijlstra
2008-08-08 17:48 ` Linus Torvalds
2008-08-08 18:14 ` [PATCH] printk: robustify printk Peter Zijlstra
2008-08-08 18:30 ` Linus Torvalds
2008-08-08 18:33 ` Peter Zijlstra
2008-08-08 19:14 ` Andrew Morton
2008-08-08 19:21 ` Peter Zijlstra
2008-08-08 19:37 ` Andrew Morton
2008-08-08 19:49 ` Peter Zijlstra
2008-08-08 20:32 ` Paul E. McKenney
2008-08-08 20:37 ` Peter Zijlstra
2008-08-08 20:46 ` Andrew Morton
2008-08-08 20:57 ` Linus Torvalds
2008-08-08 21:13 ` Andrew Morton
2008-08-08 20:50 ` Steven Rostedt
2008-08-08 19:47 ` Peter Zijlstra
2008-08-11 10:45 ` Ingo Molnar
2008-08-11 11:03 ` Andi Kleen
2008-08-11 11:22 ` Peter Zijlstra
2008-08-11 11:42 ` Andi Kleen
2008-08-11 14:15 ` Valdis.Kletnieks
2008-08-11 14:29 ` Andi Kleen
2008-08-11 14:55 ` Steven Rostedt
2008-08-11 12:02 ` Ingo Molnar [this message]
2008-08-11 12:14 ` Andi Kleen
2008-08-11 11:04 ` Peter Zijlstra
2008-08-11 11:51 ` Ingo Molnar
2008-08-11 12:36 ` Ingo Molnar
2008-08-20 12:40 ` Jiri Kosina
2008-08-20 12:43 ` Peter Zijlstra
2008-08-20 13:40 ` Ingo Molnar
2008-08-11 16:09 ` Paul E. McKenney
2008-08-11 13:22 ` Paul E. McKenney
2008-08-08 20:30 ` Paul E. McKenney
2008-08-08 20:20 ` Paul E. McKenney
2008-08-08 21:35 ` Andi Kleen
2008-08-08 23:02 ` David Miller
2008-08-09 0:18 ` Paul E. McKenney
2008-08-08 17:52 ` [PATCH 0/2] printk vs rq->lock and xtime lock Steven Rostedt
2008-03-24 18:16 ` Linus Torvalds
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=20080811120231.GC23529@elte.hu \
--to=mingo@elte.hu \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=marcin.slusarz@gmail.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/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