2006-02-23 23:10:10

by Tilman Schmidt

[permalink] [raw]
Subject: [PATCH] reduce syslog clutter

The current versions of the err() / info() / warn() syslog macros
insert __FILE__ at the beginning of the message, which expands to
the complete path name of the source file within the kernel tree.

With the following patch, when used in a module, they'll insert the
module name instead, which is significantly shorter and also tends to
be more useful to users trying to make sense of a particular message.

The patch also adds macros for the KERN_NOTICE severity level which
was so far uncatered for.

Signed-off-by: Tilman Schmidt <[email protected]>
---

include/linux/device.h | 2 ++
include/linux/usb.h | 8 +++++---
2 files changed, 7 insertions(+), 3 deletions(-)

diff -ru linux-2.6.16-rc4/include/linux/device.h linux-2.6.16-rc4-new/include/linux/device.h
--- linux-2.6.16-rc4/include/linux/device.h 2006-02-13 01:27:25.000000000 +0100
+++ linux-2.6.16-rc4-new/include/linux/device.h 2006-02-23 23:28:00.000000000 +0100
@@ -424,6 +424,8 @@
dev_printk(KERN_INFO , dev , format , ## arg)
#define dev_warn(dev, format, arg...) \
dev_printk(KERN_WARNING , dev , format , ## arg)
+#define dev_notice(dev, format, arg...) \
+ dev_printk(KERN_NOTICE , dev , format , ## arg)

/* Create alias, so I can be autoloaded. */
#define MODULE_ALIAS_CHARDEV(major,minor) \
diff -ru linux-2.6.16-rc4/include/linux/usb.h linux-2.6.16-rc4-new/include/linux/usb.h
--- linux-2.6.16-rc4/include/linux/usb.h 2006-02-22 12:04:07.000000000 +0100
+++ linux-2.6.16-rc4-new/include/linux/usb.h 2006-02-23 23:30:35.000000000 +0100
@@ -1211,11 +1211,13 @@
#endif

#define err(format, arg...) printk(KERN_ERR "%s: " format "\n" , \
- __FILE__ , ## arg)
+ THIS_MODULE ? THIS_MODULE->name : __FILE__ , ## arg)
#define info(format, arg...) printk(KERN_INFO "%s: " format "\n" , \
- __FILE__ , ## arg)
+ THIS_MODULE ? THIS_MODULE->name : __FILE__ , ## arg)
#define warn(format, arg...) printk(KERN_WARNING "%s: " format "\n" , \
- __FILE__ , ## arg)
+ THIS_MODULE ? THIS_MODULE->name : __FILE__ , ## arg)
+#define notice(format, arg...) printk(KERN_NOTICE "%s: " format "\n", \
+ THIS_MODULE ? THIS_MODULE->name : __FILE__ , ## arg)


#endif /* __KERNEL__ */

--
Tilman Schmidt E-Mail: [email protected]
Bonn, Germany
Diese Nachricht besteht zu 100% aus wiederverwerteten Bits.
Unge?ffnet mindestens haltbar bis: (siehe R?ckseite)


Attachments:
signature.asc (250.00 B)
OpenPGP digital signature

2006-02-24 06:05:26

by Greg KH

[permalink] [raw]
Subject: Re: [PATCH] reduce syslog clutter

On Fri, Feb 24, 2006 at 12:10:05AM +0100, Tilman Schmidt wrote:
> The current versions of the err() / info() / warn() syslog macros
> insert __FILE__ at the beginning of the message, which expands to
> the complete path name of the source file within the kernel tree.

Note, this is the usb usage, you might want to post this on the
linux-usb-devel mailing list :)

> With the following patch, when used in a module, they'll insert the
> module name instead, which is significantly shorter and also tends to
> be more useful to users trying to make sense of a particular message.
>
> The patch also adds macros for the KERN_NOTICE severity level which
> was so far uncatered for.

Does anyone want to use it?

I suggest splitting this up into two different patches.

thanks,

greg k-h

2006-02-24 09:30:00

by Tilman Schmidt

[permalink] [raw]
Subject: Re: [PATCH] reduce syslog clutter

Hello Greg,

thanks for your comments.
Greg KH wrote:
> On Fri, Feb 24, 2006 at 12:10:05AM +0100, Tilman Schmidt wrote:
>> The current versions of the err() / info() / warn() syslog macros
>> insert __FILE__ at the beginning of the message, which expands to
>> the complete path name of the source file within the kernel tree.
>
> Note, this is the usb usage, you might want to post this on the
> linux-usb-devel mailing list :)

Ok.

>> With the following patch, when used in a module, they'll insert the
>> module name instead, which is significantly shorter and also tends to
>> be more useful to users trying to make sense of a particular message.
>>
>> The patch also adds macros for the KERN_NOTICE severity level which
>> was so far uncatered for.
>
> Does anyone want to use it?

Yes, me. :-)

In fact, they are being used in the Gigaset drivers which are currently
in the process of being submitted for inclusion in the kernel tree, but
their definitions are in the driver specific header file
drivers/isdn/gigaset/gigaset.h, although they really belong with
their brothers and sisters in usb.h / device.h.

> I suggest splitting this up into two different patches.

Ok.

Regards
Tilman

--
Tilman Schmidt E-Mail: [email protected]
Bonn, Germany
Diese Nachricht besteht zu 100% aus wiederverwerteten Bits.
Unge?ffnet mindestens haltbar bis: (siehe R?ckseite)


Attachments:
signature.asc (250.00 B)
OpenPGP digital signature