[PATCH] sched/debug: Reduce SEQ_printf footprint

From: Joe Perches
Date: Fri Apr 17 2015 - 14:39:38 EST


This macro can be converted to a static inline to reduce
object size.

(x86-64 defconfig, with SCHED_DEBUG)

$ size kernel/sched/debug.o*
text data bss dec hex filename
13885 8 4098 17991 4647 kernel/sched/debug.o.new
20413 8 4098 24519 5fc7 kernel/sched/debug.o.old

Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
---
kernel/sched/debug.c | 21 ++++++++++++++-------
1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/kernel/sched/debug.c b/kernel/sched/debug.c
index a245c1f..c7932cc 100644
--- a/kernel/sched/debug.c
+++ b/kernel/sched/debug.c
@@ -25,13 +25,20 @@ static DEFINE_SPINLOCK(sched_debug_lock);
* This allows printing both to /proc/sched_debug and
* to the console
*/
-#define SEQ_printf(m, x...) \
- do { \
- if (m) \
- seq_printf(m, x); \
- else \
- printk(x); \
- } while (0)
+__printf(2, 3)
+static void SEQ_printf(struct seq_file *m, const char *fmt, ...)
+{
+ va_list args;
+
+ va_start(args, fmt);
+
+ if (m)
+ seq_vprintf(m, fmt, args);
+ else
+ vprintk(fmt, args);
+
+ va_end(args);
+}

/*
* Ease the printing of nsec fields:


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/