Re: [PATCH] CodingStyle: Printing numbers in parentheses is fine

From: Andrew Morton
Date: Sat Sep 29 2007 - 06:53:00 EST

On Sat, 29 Sep 2007 12:25:30 +0200 Jean Delvare <khali@xxxxxxxxxxxx> wrote:

> Remove a not particularly relevant rule from CodingStyle.
> Sometimes, printing numbers in parentheses doesn't add value, but in
> some (most?) cases it makes the message easier to read. As a matter of
> fact, this practice is widely used in the kernel:
> linux-2.6.23-rc8$ quilt grep -I '(%l*[du])' | wc -l
> 3166
> linux-2.6.23-rc8$
> Signed-off-by: Jean Delvare <khali@xxxxxxxxxxxx>
> ---
> Documentation/CodingStyle | 2 --
> 1 file changed, 2 deletions(-)
> --- linux-2.6.23-rc8.orig/Documentation/CodingStyle 2007-07-23 16:44:32.000000000 +0200
> +++ linux-2.6.23-rc8/Documentation/CodingStyle 2007-09-28 23:53:23.000000000 +0200
> @@ -638,8 +638,6 @@ concise, clear, and unambiguous.
> Kernel messages do not have to be terminated with a period.
> -Printing numbers in parentheses (%d) adds no value and should be avoided.
> -
> There are a number of driver model diagnostic macros in <linux/device.h>
> which you should use to make sure messages are matched to the right device
> and driver, and are tagged with the right level: dev_err(), dev_warn(),

I wonder how that got there.

Printing something like

bytes remaining: 0x12 (18)

is a quite logical thing to do, although pretty darm pointless.

otoh, looking at the various instances, we have lots of stuff like this:

printk(KERN_ERR "seq-oss: unable to delete queue %d (%d)\n", queue, rc);

which I would argue is wrong and is inconsistent with most other error
reporting. It should be

unable to delete queue %d: %d

And this:

printk(KERN_ERR "%s: context size (%u) exceeds payload "

doesn't need the parens


printk("hardirqs last enabled at (%u): ", curr->hardirq_enable_event);
printk("hardirqs last disabled at (%u): ", curr->hardirq_disable_event);
printk("softirqs last enabled at (%u): ", curr->softirq_enable_event);
printk("softirqs last disabled at (%u): ", curr->softirq_disable_event);

all the parens are just illogical and should be removed.


xlog_warn("XFS: %s: unrecognised log version (%d).",
__FUNCTION__, INT_GET(rhead->h_version, ARCH_CONVERT));

should use "unrecognised log version: %d"


printk(KERN_ERR "udf: unknown compression code (%d) stri=%s\n",
cmp_id, ocu_i->u_name);

should use colon as well.

So in fact a large number of the instances I see in there are illogical and
basically gramatically wrong and should be converted to use a colon.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at