On Mon, Feb 17, 2014 at 05:43:57PM -0800, Paul E. McKenney wrote: > On Mon, Feb 17, 2014 at 05:23:18PM -0800, Josh Triplett wrote: > > On Mon, Feb 17, 2014 at 04:58:02PM -0800, Paul E. McKenney wrote: > > > On Mon, Feb 17, 2014 at 04:26:06PM -0800, Josh Triplett wrote: > > > > On Mon, Feb 17, 2014 at 02:12:23PM -0800, Paul E. McKenney wrote: > > > > > From: "Paul E. McKenney" <paul...@linux.vnet.ibm.com> > > > > > > > > > > These diagnostic macros are not confined to torturing RCU, so this > > > > > commit > > > > > makes them available to other torture tests. > > > > > > > > > > Signed-off-by: Paul E. McKenney <paul...@linux.vnet.ibm.com> > > > > > > > > This removes the do {} while (0) around the first of the macros, without > > > > any explanation in the commit message. > > > > > > checkpatch.pl yelled at me about it. ;-) > > > > That's a fine reason, but the change needs documenting in the commit > > message. > > > > > > Also, to what extent could these be made redundant with pr_fmt? > > > > if(verbose) seems like it really ought to become a priority level or > > > > dynamic debugging (and it's really awful to further propagate macros > > > > that reference an out-of-macro variable). Ideally all of these could go > > > > away in favor of pr_fmt, and then the individual calls to them would > > > > become pr_alert, pr_debug, pr_error, or similar. > > > > > > I don't immediately see how to get the "!!!" to be there or not with > > > pr_fmt(), since the same pr_fmt() would apply to all the macros. > > > > Replace VERBOSE_TOROUT_ERRSTRING with something like pr_emerg, or leave > > it as pr_alert and drop the priority of the other variations to > > something less; then instead of "!!!" you have the existing message > > priority mechanism. > > Is this message-priority mechanism apparent over a serial console? > As in can a script reading the serial console output tell what the > message priority is?
Good point. Well, if the use of "verbose" and "torture_type" went away in favor of dynamic debug and pr_fmt, respectively, then having an error-printing macro that just does pr_alert("!!! " ...) doesn't seem so bad. > > Also, if it helps, note that you can add parameters in pr_fmt, as long > > as they're the initial parameters and you add corresponding format > > specifiers before the passed format string. (Many modules do this to > > add __func__, for instance.) > > Agreed, and I do see some uses of this sort. It should also handle the desired prefix that these macros are adding. > > > I am also not all that excited about including "verbose" or similar > > > into the argument list of all calls to these guys. > > > > verbose could go away entirely in favor of dynamic debug; you could then > > turn debug on or off for the relevant torture test module instead of > > setting verbose. > > But I need a pretty fully functional userspace to control the dynamic > debug from what I can see. I really would like to avoid relying on > having much of any userspace during rcutorture and locktorture testing. > The reason is that avoiding a userspace greatly reduces my memory and > disk requirements, allowing me to run more instances of rcutorture and > locktorture in parallel on smaller systems. You can arbitrarily configure dynamic debug from the kernel command line; no userspace required. - Josh Triplett -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/