Re: [patch 1/3] kmsg: Kernel message catalog macros.

From: Greg KH
Date: Wed Aug 06 2008 - 16:15:57 EST


On Wed, Aug 06, 2008 at 10:35:16AM +0200, Martin Schwidefsky wrote:
> On Tue, 2008-08-05 at 15:31 -0700, Greg KH wrote:
> > On Thu, Jul 31, 2008 at 11:10:04AM +0200, Martin Schwidefsky wrote:
> > > On Wed, 2008-07-30 at 15:04 -0700, Greg KH wrote:
> > > > On Thu, Jul 31, 2008 at 12:02:04AM +0200, Kay Sievers wrote:
> > > > > On Wed, Jul 30, 2008 at 18:56, Martin Schwidefsky
> > > > > <schwidefsky@xxxxxxxxxx> wrote:
> > > > >
> > > > > > +#define kmsg_dev_alert(id, dev, format, arg...) \
> > > > > > + printk(__KMSG_CHECK(ALERT, id) KMSG_COMPONENT \
> > > > > > + ": %s: " format, (dev)->bus_id , ## arg)
> > > > >
> > > > > Care to use dev_name(), bus_id will be removed soon.
> > > >
> > > > Hm, just use dev_printk() instead, it handles all of these kinds of
> > > > changes automatically.
> > >
> > > Using dev_printk won't work because of the order of the elements of the
> > > printk. The kmsg tag should not have a "random" position in the printk
> > > but should be the first element. If we use dev_printk the kmsg tag will
> > > be the third element, for other kmsg printks it will be the first. In
> > > addition the kmsg message tag for the device drivers already includes
> > > the driver name ..
> >
> > But the structure of dev_printk() is well definied and should be pretty
> > trival to parse even with missing fields.
>
> The missing field is the message tag. Which is the key for the message
> lookup. As far as the kmsg catalog is concerned this is a pretty
> important field that may not be missing from the printk itself.

No, I mean use dev_printk() as the base for your logging macro. Add
your message tag as the first field after the dev_printk() information.

thanks,

greg k-h
--
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/