Re: [PATCH 1/2] net/netfilter/ipvs: Move #define KMSG_COMPONENT to Makefile
From: Joe Perches <joe@perches.com>
Date: 2009-10-01 00:50:35
Also in:
lkml, lvs-devel, netfilter-devel
From: Joe Perches <joe@perches.com>
Date: 2009-10-01 00:50:35
Also in:
lkml, lvs-devel, netfilter-devel
On Thu, 2009-10-01 at 02:31 +0200, Jan Engelhardt wrote:
KBUILD_MODNAME is special in that it is derived from the actual source filename.
Kind of. It's derived from the module name, not the filename.
Of course you could put #define KBUILD_MODNAME "foo" in your source file, but that is like putting changelogs there when they belong into the git log.
I agree with that.
Well I personally prefer the #include instead of hiding such in Makefiles. You know, when newcomers could start doing `grep KMSG_COMPONENT *.[ch]`. Perhaps GCC's -include flag in a Makefile to avoid #includes in .c files?
I imagine an eventual goal of standardizing the default pr_fmt define in kernel.h to #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt so that all pr_<level> calls get this unless otherwise specified. Or perhaps better, to get rid of pr_fmt(fmt) altogether and have printk emit the filename/modulename, function and/or code offset by using something like %pS after the level. I see the Makefile use, which I don't really like too much because of the information hiding, as an intermediate step until that's possible.