All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Joe Perches <joe@perches.com>
Cc: Josh Triplett <josh@joshtriplett.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Davidlohr Bueso <dave@stgolabs.net>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 18/18] rcu: Use pr_fmt to prefix "rcu: " to logging output
Date: Mon, 14 May 2018 15:24:56 -0700	[thread overview]
Message-ID: <20180514222456.GO26088@linux.vnet.ibm.com> (raw)
In-Reply-To: <32216d8f154b29400d4c11bae91850591114f7f8.camel@perches.com>

On Mon, May 14, 2018 at 02:41:59PM -0700, Joe Perches wrote:
> On Mon, 2018-05-14 at 13:29 -0700, Paul E. McKenney wrote:
> > On Thu, May 10, 2018 at 08:45:44AM -0700, Joe Perches wrote:
> > > Use a consistent logging prefix for all rcu related output.
> > > 
> > > Signed-off-by: Joe Perches <joe@perches.com>
> > 
> > I took parts of this (thank you!) but have concerns about other parts.
> []
> > > diff --git a/kernel/rcu/rcuperf.c b/kernel/rcu/rcuperf.c
> > > index 076a50fb22ad..ebdd77b45470 100644
> > > --- a/kernel/rcu/rcuperf.c
> > > +++ b/kernel/rcu/rcuperf.c
> > > @@ -19,6 +19,9 @@
> > >   *
> > >   * Authors: Paul E. McKenney <paulmck@us.ibm.com>
> > >   */
> > > +
> > > +#define pr_fmt(fmt) "rcu: " fmt
> > 
> > This is going to get us messages of the form "rcu: rcu-perf:", not?
> > (And other odd combinations, depending on the flavor of RCU under test.)
> > If so, this does not seem to be an improvement.
> 
> That depends on the existing embedded content of the format.
> This will prefix just "rcu: " to pr_<level> output.

OK, so to make this work, I need to create special-purpose pr_fmt()
definitions for torture, rcutorture, locktorture, and rcuperf.  Most
of the rest don't care.

Or am I missing something basic here?

> > > diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
> []
> > > @@ -908,7 +909,7 @@ rcu_torture_writer(void *arg)
> > >  	VERBOSE_TOROUT_STRING("rcu_torture_writer task started");
> > >  	if (!can_expedite)
> > >  		pr_alert("%s" TORTURE_FLAG
> > > -			 " GP expediting controlled from boot/sysfs for %s.\n",
> > > +			 " GP expediting controlled from boot/sysfs for %s\n",
> > >  			 torture_type, cur_ops->name);
> 
> As there is _no_ pr_fmt #defined in this file,
> output will/could be prefixed with KBUILD_MODNAME ": "
> (in this case "rcutorture: ") if/when the generic
> pr_fmt conversion patch is applied.

Not a fan, NACK.

> > >  	} else if (gp_sync && !cur_ops->sync) {
> > > -		pr_alert("%s: gp_sync without primitives.\n", __func__);
> > > +		pr_alert("%s: gp_sync without primitives\n", __func__);
> > 
> > I used a CDC Cyber 73 in the 1970s.
> 
> Fancy.  I used a CDC 6400 and an IBM 1620, but
> those were pretty old when I started.

;-)

> > It had tiny memory by today's
> > standards, but even it had periods in its error messages.  We can easily
> > afford them today, especially given that rcutorture is not included in
> > small-memory Linux configurations.
> 
> OK, but I like consistency too.
> 
> ~90 percent of linux logging does not use terminating periods.
> For instance, on my laptop:
> 
> $ uptime -p
> up 1 week, 1 day, 13 hours, 37 minute
> $ dmesg | wc -l
> 4240
> $ dmesg | grep -P "\w\.$"| wc -l
> 381

Why is this a problem worth fixing?  From where I sit, it is not.

Even assuming that this is somehow worth solving, why is it buried
in an unrelated patch?

> > > @@ -1711,11 +1712,11 @@ static void rcu_test_debug_objects(void)
> > > 
> > >  	/* Wait for them all to get done so we can safely return. */
> > >  	rcu_barrier();
> > > -	pr_alert("%s: WARN: Duplicate call_rcu() test complete.\n", KBUILD_MODNAME);
> > > +	pr_alert("WARN: Duplicate call_rcu() test complete\n");
> > 
> > I would like to keep these, as they mark the region of console output where
> > splats are expected.
> 
> The prefixes are still there...
> 
> > >  	if (cur_ops->fqs == NULL && fqs_duration != 0) {
> > > -		pr_alert("rcu-torture: ->fqs NULL and non-zero fqs_duration, fqs disabled.\n");
> > > +		pr_alert("->fqs NULL and non-zero fqs_duration, fqs disabled\n");
> > 
> > This I would like to keep.  Easier to find.
> 
> One thing that you could use to validate the
> output string format is after compilation:
> 
> $ strings kernel/rcu/rcutorture.o | grep -P "^[0-6]\w+:"
> 
> With your change, you will see duplicated prefixes.

Except that right now there are not duplicated prefixes.  Those
apparently only show up after some earlier patch in/before your set is
applied, correct?  Plus with your change, I apparently get quite a few
semi-duplicated prefixes, which I would rather avoid, as it would add
pointless thrash to my rcutorture scripting.

Is there some C-preprocessor macro indicating whether or not your changes
have been applied?

							Thanx, Paul

  reply	other threads:[~2018-05-14 22:23 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-10 15:45 [PATCH 00/18] Convert default pr_fmt from empty to KBUILD_MODNAME Joe Perches
2018-05-10 15:45 ` Joe Perches
2018-05-10 15:45 ` Joe Perches
2018-05-10 15:45 ` [PATCH 01/18] kernel: Use pr_fmt Joe Perches
2018-05-10 16:14   ` Paul Moore
2018-05-10 19:05   ` Kees Cook
2018-05-13 19:17   ` Jessica Yu
2018-05-14 13:38   ` Masami Hiramatsu
2018-05-14 18:06   ` Paul E. McKenney
2018-05-14 18:59   ` Paul Moore
2018-05-10 15:45 ` [PATCH 02/18] lib: " Joe Perches
2018-05-10 15:45 ` [PATCH 03/18] printk: Convert pr_fmt from blank define to KBUILD_MODNAME Joe Perches
2018-05-10 16:28   ` Steven Rostedt
2018-05-11 21:39     ` [PATCH] ring_buffer: Update logging to use single line output Joe Perches
2018-07-12  2:57       ` Steven Rostedt
2018-07-12  4:42         ` Joe Perches
2018-07-12 13:00           ` Steven Rostedt
2018-05-11  1:51   ` [PATCH 03/18] printk: Convert pr_fmt from blank define to KBUILD_MODNAME Sergey Senozhatsky
2018-05-11  1:57     ` Joe Perches
2018-05-11  2:12       ` Joe Perches
2018-05-11  2:24       ` Sergey Senozhatsky
2018-05-11  2:23     ` Sergey Senozhatsky
2018-05-11  2:33       ` Joe Perches
2018-05-11  2:41         ` Sergey Senozhatsky
2018-05-11  2:57           ` Joe Perches
2018-05-18  8:42   ` Petr Mladek
2018-05-18  9:10     ` Joe Perches
2018-05-18 20:29       ` Andy Shevchenko
2018-05-19  2:05         ` Joe Perches
2018-05-19 18:27           ` Andy Shevchenko
2018-05-10 15:45 ` [PATCH 04/18] x86: Remove pr_fmt duplicate logging prefixes Joe Perches
2018-05-13 19:27   ` [tip:x86/cleanups] " tip-bot for Joe Perches
2018-05-17 18:27     ` Borislav Petkov
2018-05-17 18:43       ` Joe Perches
2018-05-17 19:14         ` Thomas Gleixner
2019-02-21  6:25         ` Bjorn Helgaas
2018-05-10 15:45 ` [PATCH 05/18] x86/mtrr: Rename main.c to mtrr.c and remove duplicate prefixes Joe Perches
2018-05-13 19:28   ` [tip:x86/cleanups] " tip-bot for Joe Perches
2018-05-10 15:45 ` [PATCH 06/18] net: Remove pr_fmt duplicate logging prefixes Joe Perches
2018-05-10 15:45 ` [PATCH 07/18] blk-mq: " Joe Perches
2018-05-10 15:45 ` [PATCH 08/18] random: " Joe Perches
2018-05-10 15:45 ` [PATCH 09/18] ptp: " Joe Perches
2018-05-10 19:35   ` Richard Cochran
2018-05-10 15:45 ` [PATCH 10/18] efifb: " Joe Perches
2018-05-10 15:45   ` Joe Perches
2018-05-10 15:45 ` [PATCH 11/18] proc: " Joe Perches
2018-05-10 15:45 ` [PATCH 12/18] uprobes: " Joe Perches
2018-05-10 15:45 ` [PATCH 13/18] printk: " Joe Perches
2018-05-11  1:54   ` Sergey Senozhatsky
2018-05-18  8:43   ` Petr Mladek
2018-05-10 15:45 ` [PATCH 14/18] lib/mpi: " Joe Perches
2018-05-10 15:45 ` [PATCH 15/18] security: " Joe Perches
2018-05-10 15:45   ` Joe Perches
2018-05-10 16:15   ` Paul Moore
2018-05-10 16:15     ` Paul Moore
2018-05-10 15:45 ` [PATCH 16/18] aoe: " Joe Perches
2018-05-10 15:45 ` [PATCH 17/18] security: encrypted-keys: " Joe Perches
2018-05-10 15:45   ` Joe Perches
2018-05-10 15:45   ` Joe Perches
2018-05-10 18:09   ` James Morris
2018-05-10 18:09     ` James Morris
2018-05-10 18:09     ` James Morris
2018-05-10 15:45 ` [PATCH 18/18] rcu: Use pr_fmt to prefix "rcu: " to logging output Joe Perches
2018-05-14 20:29   ` Paul E. McKenney
2018-05-14 20:37     ` Andy Shevchenko
2018-05-14 21:08       ` Paul E. McKenney
2018-05-14 20:52     ` Randy Dunlap
2018-05-14 21:05       ` Paul E. McKenney
2018-05-14 21:41     ` Joe Perches
2018-05-14 22:24       ` Paul E. McKenney [this message]
2018-05-14 22:54         ` Joe Perches
2018-05-14 23:58           ` Paul E. McKenney
2018-05-15  0:23             ` Joe Perches
2018-05-15  0:32               ` Paul E. McKenney
2018-05-15  1:22                 ` Joe Perches
2018-05-15  3:41                   ` Paul E. McKenney
2018-05-15 19:28                 ` Paul E. McKenney
2018-05-15 21:11                   ` Joe Perches
2018-05-15 21:23                     ` Paul E. McKenney

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=20180514222456.GO26088@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=dave@stgolabs.net \
    --cc=jiangshanlai@gmail.com \
    --cc=joe@perches.com \
    --cc=josh@joshtriplett.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=rostedt@goodmis.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.