lkml.org 
[lkml]   [2018]   [Sep]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] ttyprintk: make the printk log level configurable
Date
>>>>> "Joe" == Joe Perches <joe@perches.com> writes:

> On Fri, 2018-09-07 at 09:50 +0200, Peter Korsgaard wrote:
>> On Tue, Aug 21, 2018 at 7:28 PM Peter Korsgaard <peter@korsgaard.com> wrote:
>> >
>> > For some use cases it is handy to use a different printk log level than the
>> > default (info) for the messages written to ttyprintk, so add a Kconfig
>> > option similar to what we have for default console loglevel.
>>
>> Ping? Feedback, comments?

> I think it is moving "[U]" into TPK_LEVEL is an
> unnecessary and a tad obfuscating change.

It is arguably part of the prefix, but OK - I have no problem leaving it
in the printk line.

> This also adds a leading space for unknown reasons
> after the KERN_SOH <level>.

True. I'll fix that and send a v2 - Thanks.

>> > diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
>> > index ce277ee0a28a..14a7f023f20b 100644
>> > --- a/drivers/char/Kconfig
>> > +++ b/drivers/char/Kconfig
>> > @@ -66,6 +66,14 @@ config TTY_PRINTK
>> >
>> > If unsure, say N.
>> >
>> > +config TTY_PRINTK_LEVEL
>> > + depends on TTY_PRINTK
>> > + int "ttyprintk log level (1-7)"
>> > + range 1 7
>> > + default "6"
>> > + help
>> > + Printk log level to use for ttyprintk messages.
>> > +
>> > config PRINTER
>> > tristate "Parallel printer support"
>> > depends on PARPORT
>> > diff --git a/drivers/char/ttyprintk.c b/drivers/char/ttyprintk.c
>> > index 67549ce88cc9..22fbd483b5dc 100644
>> > --- a/drivers/char/ttyprintk.c
>> > +++ b/drivers/char/ttyprintk.c
>> > @@ -37,6 +37,8 @@ static struct ttyprintk_port tpk_port;
>> > */
>> > #define TPK_STR_SIZE 508 /* should be bigger then max expected line length */
>> > #define TPK_MAX_ROOM 4096 /* we could assume 4K for instance */
>> > +#define TPK_PREFIX KERN_SOH __stringify(CONFIG_TTY_PRINTK_LEVEL) " [U]"

> I think this should be

> #define TPK_PREFIX KERN_SOH __stringify(CONFIG_TTY_PRINTK_LEVEL)

>> > +
>> > static int tpk_curr;
>> >
>> > static char tpk_buffer[TPK_STR_SIZE + 4];
>> > @@ -45,7 +47,7 @@ static void tpk_flush(void)
>> > {
>> > if (tpk_curr > 0) {
>> > tpk_buffer[tpk_curr] = '\0';
>> > - pr_info("[U] %s\n", tpk_buffer);
>> > + printk(TPK_PREFIX " %s\n", tpk_buffer);

> and this

> printk(TPK_PREFIX "[U] %s\n", tpk_buffer);

>> > tpk_curr = 0;
>> > }
>> > }
>> > --
>> > 2.11.0
>> >
>>
>>

--
Bye, Peter Korsgaard

\
 
 \ /
  Last update: 2018-09-07 10:12    [W:0.054 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site