diff options
author | David Howells <dhowells@redhat.com> | 2010-08-12 11:54:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-12 12:51:35 -0400 |
commit | 12fdff3fc2483f906ae6404a6e8dcf2550310b6f (patch) | |
tree | a79fb1365fce7c7529655a8802d6d6bf8509b374 | |
parent | 1490cf5f0cb07dd49cdab4bceb769d7f711d7ca6 (diff) |
Add a dummy printk function for the maintenance of unused printks
Add a dummy printk function for the maintenance of unused printks through gcc
format checking, and also so that side-effect checking is maintained too.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/mn10300/kernel/mn10300-serial.c | 5 | ||||
-rw-r--r-- | fs/afs/internal.h | 12 | ||||
-rw-r--r-- | fs/cachefiles/internal.h | 13 | ||||
-rw-r--r-- | fs/fscache/internal.h | 14 | ||||
-rw-r--r-- | include/linux/kernel.h | 7 | ||||
-rw-r--r-- | kernel/cred.c | 4 | ||||
-rw-r--r-- | net/rxrpc/ar-internal.h | 16 | ||||
-rw-r--r-- | security/keys/internal.h | 5 |
8 files changed, 22 insertions, 54 deletions
diff --git a/arch/mn10300/kernel/mn10300-serial.c b/arch/mn10300/kernel/mn10300-serial.c index ef34d5a0f8bd..9d49073e827a 100644 --- a/arch/mn10300/kernel/mn10300-serial.c +++ b/arch/mn10300/kernel/mn10300-serial.c | |||
@@ -44,11 +44,6 @@ static const char serial_revdate[] = "2007-11-06"; | |||
44 | #include <unit/timex.h> | 44 | #include <unit/timex.h> |
45 | #include "mn10300-serial.h" | 45 | #include "mn10300-serial.h" |
46 | 46 | ||
47 | static inline __attribute__((format(printf, 1, 2))) | ||
48 | void no_printk(const char *fmt, ...) | ||
49 | { | ||
50 | } | ||
51 | |||
52 | #define kenter(FMT, ...) \ | 47 | #define kenter(FMT, ...) \ |
53 | printk(KERN_DEBUG "-->%s(" FMT ")\n", __func__, ##__VA_ARGS__) | 48 | printk(KERN_DEBUG "-->%s(" FMT ")\n", __func__, ##__VA_ARGS__) |
54 | #define _enter(FMT, ...) \ | 49 | #define _enter(FMT, ...) \ |
diff --git a/fs/afs/internal.h b/fs/afs/internal.h index 8679089ce9a1..c6c93f180707 100644 --- a/fs/afs/internal.h +++ b/fs/afs/internal.h | |||
@@ -752,12 +752,6 @@ extern unsigned afs_debug; | |||
752 | #define dbgprintk(FMT,...) \ | 752 | #define dbgprintk(FMT,...) \ |
753 | printk("[%-6.6s] "FMT"\n", current->comm ,##__VA_ARGS__) | 753 | printk("[%-6.6s] "FMT"\n", current->comm ,##__VA_ARGS__) |
754 | 754 | ||
755 | /* make sure we maintain the format strings, even when debugging is disabled */ | ||
756 | static inline __attribute__((format(printf,1,2))) | ||
757 | void _dbprintk(const char *fmt, ...) | ||
758 | { | ||
759 | } | ||
760 | |||
761 | #define kenter(FMT,...) dbgprintk("==> %s("FMT")",__func__ ,##__VA_ARGS__) | 755 | #define kenter(FMT,...) dbgprintk("==> %s("FMT")",__func__ ,##__VA_ARGS__) |
762 | #define kleave(FMT,...) dbgprintk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) | 756 | #define kleave(FMT,...) dbgprintk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) |
763 | #define kdebug(FMT,...) dbgprintk(" "FMT ,##__VA_ARGS__) | 757 | #define kdebug(FMT,...) dbgprintk(" "FMT ,##__VA_ARGS__) |
@@ -792,9 +786,9 @@ do { \ | |||
792 | } while (0) | 786 | } while (0) |
793 | 787 | ||
794 | #else | 788 | #else |
795 | #define _enter(FMT,...) _dbprintk("==> %s("FMT")",__func__ ,##__VA_ARGS__) | 789 | #define _enter(FMT,...) no_printk("==> %s("FMT")",__func__ ,##__VA_ARGS__) |
796 | #define _leave(FMT,...) _dbprintk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) | 790 | #define _leave(FMT,...) no_printk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) |
797 | #define _debug(FMT,...) _dbprintk(" "FMT ,##__VA_ARGS__) | 791 | #define _debug(FMT,...) no_printk(" "FMT ,##__VA_ARGS__) |
798 | #endif | 792 | #endif |
799 | 793 | ||
800 | /* | 794 | /* |
diff --git a/fs/cachefiles/internal.h b/fs/cachefiles/internal.h index a8cd821226da..bd6bc1bde2d7 100644 --- a/fs/cachefiles/internal.h +++ b/fs/cachefiles/internal.h | |||
@@ -267,13 +267,6 @@ do { \ | |||
267 | #define dbgprintk(FMT, ...) \ | 267 | #define dbgprintk(FMT, ...) \ |
268 | printk(KERN_DEBUG "[%-6.6s] "FMT"\n", current->comm, ##__VA_ARGS__) | 268 | printk(KERN_DEBUG "[%-6.6s] "FMT"\n", current->comm, ##__VA_ARGS__) |
269 | 269 | ||
270 | /* make sure we maintain the format strings, even when debugging is disabled */ | ||
271 | static inline void _dbprintk(const char *fmt, ...) | ||
272 | __attribute__((format(printf, 1, 2))); | ||
273 | static inline void _dbprintk(const char *fmt, ...) | ||
274 | { | ||
275 | } | ||
276 | |||
277 | #define kenter(FMT, ...) dbgprintk("==> %s("FMT")", __func__, ##__VA_ARGS__) | 270 | #define kenter(FMT, ...) dbgprintk("==> %s("FMT")", __func__, ##__VA_ARGS__) |
278 | #define kleave(FMT, ...) dbgprintk("<== %s()"FMT"", __func__, ##__VA_ARGS__) | 271 | #define kleave(FMT, ...) dbgprintk("<== %s()"FMT"", __func__, ##__VA_ARGS__) |
279 | #define kdebug(FMT, ...) dbgprintk(FMT, ##__VA_ARGS__) | 272 | #define kdebug(FMT, ...) dbgprintk(FMT, ##__VA_ARGS__) |
@@ -304,9 +297,9 @@ do { \ | |||
304 | } while (0) | 297 | } while (0) |
305 | 298 | ||
306 | #else | 299 | #else |
307 | #define _enter(FMT, ...) _dbprintk("==> %s("FMT")", __func__, ##__VA_ARGS__) | 300 | #define _enter(FMT, ...) no_printk("==> %s("FMT")", __func__, ##__VA_ARGS__) |
308 | #define _leave(FMT, ...) _dbprintk("<== %s()"FMT"", __func__, ##__VA_ARGS__) | 301 | #define _leave(FMT, ...) no_printk("<== %s()"FMT"", __func__, ##__VA_ARGS__) |
309 | #define _debug(FMT, ...) _dbprintk(FMT, ##__VA_ARGS__) | 302 | #define _debug(FMT, ...) no_printk(FMT, ##__VA_ARGS__) |
310 | #endif | 303 | #endif |
311 | 304 | ||
312 | #if 1 /* defined(__KDEBUGALL) */ | 305 | #if 1 /* defined(__KDEBUGALL) */ |
diff --git a/fs/fscache/internal.h b/fs/fscache/internal.h index 6a026441c5a6..f6aad48d38a8 100644 --- a/fs/fscache/internal.h +++ b/fs/fscache/internal.h | |||
@@ -321,17 +321,11 @@ void fscache_put_context(struct fscache_cookie *cookie, void *context) | |||
321 | #define dbgprintk(FMT, ...) \ | 321 | #define dbgprintk(FMT, ...) \ |
322 | printk(KERN_DEBUG "[%-6.6s] "FMT"\n", current->comm, ##__VA_ARGS__) | 322 | printk(KERN_DEBUG "[%-6.6s] "FMT"\n", current->comm, ##__VA_ARGS__) |
323 | 323 | ||
324 | /* make sure we maintain the format strings, even when debugging is disabled */ | ||
325 | static inline __attribute__((format(printf, 1, 2))) | ||
326 | void _dbprintk(const char *fmt, ...) | ||
327 | { | ||
328 | } | ||
329 | |||
330 | #define kenter(FMT, ...) dbgprintk("==> %s("FMT")", __func__, ##__VA_ARGS__) | 324 | #define kenter(FMT, ...) dbgprintk("==> %s("FMT")", __func__, ##__VA_ARGS__) |
331 | #define kleave(FMT, ...) dbgprintk("<== %s()"FMT"", __func__, ##__VA_ARGS__) | 325 | #define kleave(FMT, ...) dbgprintk("<== %s()"FMT"", __func__, ##__VA_ARGS__) |
332 | #define kdebug(FMT, ...) dbgprintk(FMT, ##__VA_ARGS__) | 326 | #define kdebug(FMT, ...) dbgprintk(FMT, ##__VA_ARGS__) |
333 | 327 | ||
334 | #define kjournal(FMT, ...) _dbprintk(FMT, ##__VA_ARGS__) | 328 | #define kjournal(FMT, ...) no_printk(FMT, ##__VA_ARGS__) |
335 | 329 | ||
336 | #ifdef __KDEBUG | 330 | #ifdef __KDEBUG |
337 | #define _enter(FMT, ...) kenter(FMT, ##__VA_ARGS__) | 331 | #define _enter(FMT, ...) kenter(FMT, ##__VA_ARGS__) |
@@ -358,9 +352,9 @@ do { \ | |||
358 | } while (0) | 352 | } while (0) |
359 | 353 | ||
360 | #else | 354 | #else |
361 | #define _enter(FMT, ...) _dbprintk("==> %s("FMT")", __func__, ##__VA_ARGS__) | 355 | #define _enter(FMT, ...) no_printk("==> %s("FMT")", __func__, ##__VA_ARGS__) |
362 | #define _leave(FMT, ...) _dbprintk("<== %s()"FMT"", __func__, ##__VA_ARGS__) | 356 | #define _leave(FMT, ...) no_printk("<== %s()"FMT"", __func__, ##__VA_ARGS__) |
363 | #define _debug(FMT, ...) _dbprintk(FMT, ##__VA_ARGS__) | 357 | #define _debug(FMT, ...) no_printk(FMT, ##__VA_ARGS__) |
364 | #endif | 358 | #endif |
365 | 359 | ||
366 | /* | 360 | /* |
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index d848cb854655..2b0a35e6bc69 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
@@ -306,6 +306,13 @@ static inline void log_buf_kexec_setup(void) | |||
306 | } | 306 | } |
307 | #endif | 307 | #endif |
308 | 308 | ||
309 | /* | ||
310 | * Dummy printk for disabled debugging statements to use whilst maintaining | ||
311 | * gcc's format and side-effect checking. | ||
312 | */ | ||
313 | static inline __attribute__ ((format (printf, 1, 2))) | ||
314 | int no_printk(const char *s, ...) { return 0; } | ||
315 | |||
309 | extern int printk_needs_cpu(int cpu); | 316 | extern int printk_needs_cpu(int cpu); |
310 | extern void printk_tick(void); | 317 | extern void printk_tick(void); |
311 | 318 | ||
diff --git a/kernel/cred.c b/kernel/cred.c index 60bc8b1e32e6..9a3e22641fe7 100644 --- a/kernel/cred.c +++ b/kernel/cred.c | |||
@@ -22,10 +22,6 @@ | |||
22 | #define kdebug(FMT, ...) \ | 22 | #define kdebug(FMT, ...) \ |
23 | printk("[%-5.5s%5u] "FMT"\n", current->comm, current->pid ,##__VA_ARGS__) | 23 | printk("[%-5.5s%5u] "FMT"\n", current->comm, current->pid ,##__VA_ARGS__) |
24 | #else | 24 | #else |
25 | static inline __attribute__((format(printf, 1, 2))) | ||
26 | void no_printk(const char *fmt, ...) | ||
27 | { | ||
28 | } | ||
29 | #define kdebug(FMT, ...) \ | 25 | #define kdebug(FMT, ...) \ |
30 | no_printk("[%-5.5s%5u] "FMT"\n", current->comm, current->pid ,##__VA_ARGS__) | 26 | no_printk("[%-5.5s%5u] "FMT"\n", current->comm, current->pid ,##__VA_ARGS__) |
31 | #endif | 27 | #endif |
diff --git a/net/rxrpc/ar-internal.h b/net/rxrpc/ar-internal.h index 7043b294bb67..8e22bd345e71 100644 --- a/net/rxrpc/ar-internal.h +++ b/net/rxrpc/ar-internal.h | |||
@@ -597,12 +597,6 @@ extern unsigned rxrpc_debug; | |||
597 | #define dbgprintk(FMT,...) \ | 597 | #define dbgprintk(FMT,...) \ |
598 | printk("[%-6.6s] "FMT"\n", current->comm ,##__VA_ARGS__) | 598 | printk("[%-6.6s] "FMT"\n", current->comm ,##__VA_ARGS__) |
599 | 599 | ||
600 | /* make sure we maintain the format strings, even when debugging is disabled */ | ||
601 | static inline __attribute__((format(printf,1,2))) | ||
602 | void _dbprintk(const char *fmt, ...) | ||
603 | { | ||
604 | } | ||
605 | |||
606 | #define kenter(FMT,...) dbgprintk("==> %s("FMT")",__func__ ,##__VA_ARGS__) | 600 | #define kenter(FMT,...) dbgprintk("==> %s("FMT")",__func__ ,##__VA_ARGS__) |
607 | #define kleave(FMT,...) dbgprintk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) | 601 | #define kleave(FMT,...) dbgprintk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) |
608 | #define kdebug(FMT,...) dbgprintk(" "FMT ,##__VA_ARGS__) | 602 | #define kdebug(FMT,...) dbgprintk(" "FMT ,##__VA_ARGS__) |
@@ -655,11 +649,11 @@ do { \ | |||
655 | } while (0) | 649 | } while (0) |
656 | 650 | ||
657 | #else | 651 | #else |
658 | #define _enter(FMT,...) _dbprintk("==> %s("FMT")",__func__ ,##__VA_ARGS__) | 652 | #define _enter(FMT,...) no_printk("==> %s("FMT")",__func__ ,##__VA_ARGS__) |
659 | #define _leave(FMT,...) _dbprintk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) | 653 | #define _leave(FMT,...) no_printk("<== %s()"FMT"",__func__ ,##__VA_ARGS__) |
660 | #define _debug(FMT,...) _dbprintk(" "FMT ,##__VA_ARGS__) | 654 | #define _debug(FMT,...) no_printk(" "FMT ,##__VA_ARGS__) |
661 | #define _proto(FMT,...) _dbprintk("### "FMT ,##__VA_ARGS__) | 655 | #define _proto(FMT,...) no_printk("### "FMT ,##__VA_ARGS__) |
662 | #define _net(FMT,...) _dbprintk("@@@ "FMT ,##__VA_ARGS__) | 656 | #define _net(FMT,...) no_printk("@@@ "FMT ,##__VA_ARGS__) |
663 | #endif | 657 | #endif |
664 | 658 | ||
665 | /* | 659 | /* |
diff --git a/security/keys/internal.h b/security/keys/internal.h index addb67b169f4..56a133d8f37d 100644 --- a/security/keys/internal.h +++ b/security/keys/internal.h | |||
@@ -15,11 +15,6 @@ | |||
15 | #include <linux/sched.h> | 15 | #include <linux/sched.h> |
16 | #include <linux/key-type.h> | 16 | #include <linux/key-type.h> |
17 | 17 | ||
18 | static inline __attribute__((format(printf, 1, 2))) | ||
19 | void no_printk(const char *fmt, ...) | ||
20 | { | ||
21 | } | ||
22 | |||
23 | #ifdef __KDEBUG | 18 | #ifdef __KDEBUG |
24 | #define kenter(FMT, ...) \ | 19 | #define kenter(FMT, ...) \ |
25 | printk(KERN_DEBUG "==> %s("FMT")\n", __func__, ##__VA_ARGS__) | 20 | printk(KERN_DEBUG "==> %s("FMT")\n", __func__, ##__VA_ARGS__) |