Re: [PATCH 25/26] dynamic_debug: add pr_fmt_dbg() fordynamic_pr_debug

From: Joe Perches
Date: Wed Sep 28 2011 - 00:51:38 EST


On Tue, 2011-09-27 at 20:54 -0600, Jim Cromie wrote:
> Cleanest way is to drop the original synonym, and just use
> warn (its shorter), but that creates some churn (havent grepped to see
> how much).
> I picked what looked like least effort & fewest corner-cases.
> ICBW..

#ifndef pr_fmt_warning
#define pr_fmt_warning pr_fmt_warn
#endif

> > What did you think of avoiding all of this and
> > having __dynamic_pr_debug move the fmt pointer over
> > any initial KBUILD_MODULE ": "
> >
> > int __dynamic_pr_debug(struct _ddebug *descriptor, const char *fmt, ...)
> > {
> > [...]
> > size_t modsize = strlen(descriptor->modname);
> > if (0 == strncmp(fmt, descriptor->modname, modsize) &&
> > 0 == strncmp(fmt + modsize, ": ", 2))
> > fmt += modsize + 2;
> > vprintk(fmt, ...)
> > ?
>
> I was getting to that... ;-)
> Im not crazy about it. It feels like too much ..
> Its a runtime workaround for what I think is a
> problem in users' (or header's) #defines.

I think exactly the opposite myself.

I think all of the '#define pr_fmt(fmt) KBUILD_MODNAME ": "'
are effectivly useless and I will eventually delete them.

The printk subsystem should look up the module name and
prefix them to the printk akin to how the dynamic_debug
system does. Except the module name should be a singleton.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/