From: u.kleine-koenig@pengutronix.de (Uwe Kleine-König)
To: linux-arm-kernel@lists.infradead.org
Subject: About multi-line printk and the need (not) to repeat loglevel markers [Was: Re: [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera]
Date: Wed, 24 Nov 2010 09:17:48 +0100 [thread overview]
Message-ID: <20101124081748.GV4693@pengutronix.de> (raw)
In-Reply-To: <AANLkTinmky17XZZPh7QvcY_r=66f_PwzRYFPUSvhiJGK@mail.gmail.com>
Hello Linus,
On Wed, Nov 24, 2010 at 07:16:06AM +0900, Linus Torvalds wrote:
> 10/11/23 Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>:
> >
> > BTW, I just noticed that Linus wrote:
> >
> > ? ? ? ?Additionally, if no newline existed, one is added (unless the
> > ? ? ? ?log-level is the explicit KERN_CONT marker, to explicitly show
> > ? ? ? ?that it's a continuation of a previous line).
> >
> > This seems to be unimplemented, otherwise the output of
> >
> > ? ? ? ?printk(KERN_ERR "foo bar baz ");
> > ? ? ? ?printk("buz\n" KERN_WARNING "fiz\n");
> >
> > should be
> >
> > ? ? ? ?"foo bar baz \n" at error level
> > ? ? ? ?"buz\n<4>fiz\n" at default level
>
> No. The KERN_WARNING in the middle of a string is always totally
> bogus. There is no "should be". It's just wrong.
>
> The "\n" is added automatically iff there is a log-level marker at the
> beginning of the string (with LOG_CONT being the exception).
So
printk("anything that doesn't look like a loglevel marker");
always behaves like
printk(KERN_CONT "anything that doesn't look like a loglevel marker");
so unless someone wants to print a literal kernel marker we can just do
-#define KERN_CONT "<c>"
+#define KERN_CONT ""
without any harm.
I wonder why you implemented "iff there is a log-level marker at the
beginning ot the string (with KERN_CONT being the exception)." and not
"unless there is a KERN_CONT marker".
> So
>
> printk("foo bar baz ");
> printk(KERN_WARNING "fiz\n");
>
> should output two lines ("foo bar baz" with the default loglevel, and
> "fiz" with KERN_WARNING). Even though there is no explicit "\n" there
> for the first one.
>
> But KERN_XYZ anywhere but in the beginning of the string do not
> matter. Adding newlines changes none of that. It doesn't make the
> marker beginning of the string, it just makes it beginning of the
> line.
I see one reason to interpret markers after a newline. In case
recursion_bug is true, printk_buf is initialized with recursion_bug_msg
and my message gets appended. So currently the marker I pass with my
message is ignored.
Maybe wanting to fix that is just my addiction to overengineering :-)
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
next prev parent reply other threads:[~2010-11-24 8:17 UTC|newest]
Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-07 9:44 [PATCH] ARM: allow, but warn, when issuing ioremap() on RAM Felipe Contreras
2010-10-07 11:51 ` Baruch Siach
2010-10-07 12:29 ` [PATCH v2] " Felipe Contreras
2010-10-07 18:00 ` Uwe Kleine-König
2010-10-07 19:22 ` [PATCH] " Russell King - ARM Linux
2010-10-08 9:32 ` Felipe Contreras
2010-10-08 17:53 ` Russell King - ARM Linux
2010-10-08 19:37 ` Felipe Contreras
2010-10-08 23:04 ` Russell King - ARM Linux
2010-10-08 23:25 ` Greg KH
2010-10-08 23:44 ` Russell King - ARM Linux
2010-10-09 0:00 ` Greg KH
2010-10-09 0:25 ` Russell King - ARM Linux
2010-10-09 0:54 ` Greg KH
2010-10-09 2:41 ` Nicolas Pitre
2010-10-09 3:04 ` Greg KH
2010-10-09 9:32 ` Felipe Contreras
2010-10-11 10:05 ` Catalin Marinas
2010-10-11 10:39 ` Felipe Contreras
2010-10-11 10:52 ` Russell King - ARM Linux
2010-10-11 11:23 ` Catalin Marinas
2010-10-11 12:03 ` Felipe Contreras
2010-10-11 12:30 ` Catalin Marinas
2010-10-11 22:53 ` Nicolas Pitre
2010-10-14 15:02 ` Felipe Contreras
2010-10-14 17:18 ` Catalin Marinas
2010-10-14 17:44 ` Felipe Contreras
2010-10-11 11:01 ` Pawel Moll
2010-10-11 11:03 ` Catalin Marinas
2010-10-16 2:39 ` Benjamin Herrenschmidt
2010-10-16 9:43 ` Felipe Contreras
2010-10-09 0:10 ` Russell King - ARM Linux
2010-10-09 0:56 ` Felipe Contreras
2010-10-09 9:21 ` Russell King - ARM Linux
2010-10-09 10:28 ` Felipe Contreras
2010-10-09 11:11 ` Arnd Bergmann
2010-10-09 11:43 ` Dave Airlie
2010-10-09 11:55 ` Christoph Hellwig
2010-10-09 12:17 ` Felipe Contreras
2010-10-09 12:10 ` Felipe Contreras
2010-10-09 14:37 ` Russell King - ARM Linux
2010-10-09 16:18 ` Felipe Contreras
2010-10-09 11:44 ` Uwe Kleine-König
2010-10-09 12:05 ` Russell King - ARM Linux
2010-10-09 11:59 ` Felipe Contreras
2010-10-09 14:43 ` Arnd Bergmann
2010-10-09 18:59 ` Guennadi Liakhovetski
2010-10-10 1:52 ` Felipe Contreras
2010-10-11 8:35 ` Uwe Kleine-König
2010-10-11 9:02 ` Russell King - ARM Linux
2010-10-11 9:24 ` Uwe Kleine-König
2010-10-11 10:08 ` Felipe Contreras
2010-10-11 10:15 ` Russell King - ARM Linux
2010-10-11 15:25 ` Russell King - ARM Linux
2010-10-14 14:47 ` Felipe Contreras
2010-10-19 8:13 ` Colin Cross
2010-10-19 18:12 ` Russell King - ARM Linux
2010-10-19 19:21 ` Russell King - ARM Linux
2010-11-23 9:43 ` [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera Uwe Kleine-König
2010-11-23 10:12 ` Russell King - ARM Linux
2010-11-23 10:26 ` Uwe Kleine-König
2010-11-23 14:08 ` Alberto Panizzo
2010-11-23 14:17 ` Uwe Kleine-König
2010-11-24 8:02 ` Uwe Kleine-König
2010-12-06 8:33 ` Uwe Kleine-König
2010-12-06 10:14 ` Alberto Panizzo
2010-12-06 10:26 ` Russell King - ARM Linux
2010-12-06 11:37 ` Alberto Panizzo
2010-12-06 11:46 ` Russell King - ARM Linux
2010-12-06 14:09 ` Alberto Panizzo
2010-12-06 14:34 ` Russell King - ARM Linux
2010-12-06 14:54 ` Alberto Panizzo
2010-12-06 16:54 ` Alberto Panizzo
2010-11-23 10:39 ` About multi-line printk and the need (not) to repeat loglevel markers [Was: Re: [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera] Uwe Kleine-König
2010-11-23 10:58 ` Uwe Kleine-König
2010-11-23 22:16 ` Linus Torvalds
2010-11-23 22:33 ` Russell King - ARM Linux
2010-11-23 23:23 ` Joe Perches
2010-11-24 8:17 ` Uwe Kleine-König [this message]
2010-11-24 9:09 ` Michał Mirosław
2010-11-23 22:54 ` [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera Guennadi Liakhovetski
2010-10-09 0:45 ` [PATCH] ARM: allow, but warn, when issuing ioremap() on RAM Felipe Contreras
2010-10-09 8:56 ` Russell King - ARM Linux
2010-10-08 23:19 ` Greg KH
2010-10-09 3:36 ` Nicolas Pitre
2010-10-09 10:00 ` Felipe Contreras
2010-10-09 17:38 ` Nicolas Pitre
2010-10-09 20:16 ` Felipe Contreras
2010-10-13 16:17 ` Woodruff, Richard
2010-10-14 13:48 ` Felipe Contreras
2010-10-14 15:29 ` Woodruff, Richard
2010-10-16 2:36 ` Benjamin Herrenschmidt
2010-10-17 13:05 ` Woodruff, Richard
2010-10-17 23:17 ` Benjamin Herrenschmidt
2010-10-08 19:58 ` Andrew Morton
2010-10-09 13:52 ` Russell King - ARM Linux
2010-10-09 16:07 ` Felipe Contreras
2010-10-09 16:45 ` Russell King - ARM Linux
2010-10-09 19:25 ` Felipe Contreras
2010-10-10 14:23 ` Pedanekar, Hemant
2010-10-11 9:26 ` Catalin Marinas
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=20101124081748.GV4693@pengutronix.de \
--to=u.kleine-koenig@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).