]> git.baikalelectronics.ru Git - kernel.git/commit
printk: help pr_debug and pr_devel to optimize out arguments
authorAaron Conole <aconole@redhat.com>
Sat, 16 Jan 2016 00:59:12 +0000 (16:59 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 16 Jan 2016 19:17:29 +0000 (11:17 -0800)
commit471c870fe6b2b9505dc6e5635d0b1d25bd7ee337
tree808061c2a10e26be517783b9b7adf1af1b271288
parent8d8daeb07f38f6c9b8ca49dc128934e3e60d747b
printk: help pr_debug and pr_devel to optimize out arguments

Currently, pr_debug and pr_devel will not elide function call arguments
appearing in calls to the no_printk for these macros.  This is because
all side effects must be honored before proceeding to the 0-value
assignment in no_printk.

The behavior is contrary to documentation found in the CodingStyle and
the header file where these functions are declared.

This patch corrects that behavior by shunting out the call to no_printk
completely.  The format string is still checked by gcc for correctness,
but no code seems to be emitted in common cases.

[akpm@linux-foundation.org: remove braces, per Joe]
Fixes: 06bbf45b0203 ("include/linux/printk.h: use and neaten no_printk")
Signed-off-by: Aaron Conole <aconole@redhat.com>
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Cc: Joe Perches <joe@perches.com>
Cc: Jason Baron <jbaron@akamai.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/printk.h