sched/debug: Adjust newlines for better alignment

Scheduler debug stats include newlines that display out of alignment
when prefixed by timestamps. For example, the dmesg utility:

% echo t > /proc/sysrq-trigger
% dmesg
...
[ 83.124251]
runnable tasks:
S task PID tree-key switches prio wait-time
sum-exec sum-sleep
-----------------------------------------------------------------------------------------------------------

At the same time, some syslog utilities (like rsyslog by default) don't
like the additional newlines control characters, saving lines like this
to /var/log/messages:

Mar 16 16:02:29 localhost kernel: #012runnable tasks:#012 S task PID tree-key ...
^^^^ ^^^^
Clean these up by moving newline characters to their own SEQ_printf
invocation. This leaves the /proc/sched_debug unchanged, but brings the
entire output into alignment when prefixed:

% echo t > /proc/sysrq-trigger
% dmesg
...
[ 62.410368] runnable tasks:
[ 62.410368] S task PID tree-key switches prio wait-time sum-exec sum-sleep
[ 62.410369] -----------------------------------------------------------------------------------------------------------
[ 62.410369] I kworker/u12:0 5 1932.215593 332 120 0.000000 3.621252 0.000000 0 0 /

and no escaped control characters from rsyslog in /var/log/messages:

Mar 16 16:15:06 localhost kernel: runnable tasks:
Mar 16 16:15:06 localhost kernel: S task PID tree-key ...

Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1521484555-8620-3-git-send-email-joe.lawrence@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>

authored by Joe Lawrence and committed by Ingo Molnar e9ca2670 a8c024cd

Changed files
+16 -11
kernel
sched
+16 -11
kernel/sched/debug.c
··· 501 501 { 502 502 struct task_struct *g, *p; 503 503 504 - SEQ_printf(m, 505 - "\nrunnable tasks:\n" 506 - " S task PID tree-key switches prio" 507 - " wait-time sum-exec sum-sleep\n" 508 - "-------------------------------------------------------" 509 - "----------------------------------------------------\n"); 504 + SEQ_printf(m, "\n"); 505 + SEQ_printf(m, "runnable tasks:\n"); 506 + SEQ_printf(m, " S task PID tree-key switches prio" 507 + " wait-time sum-exec sum-sleep\n"); 508 + SEQ_printf(m, "-------------------------------------------------------" 509 + "----------------------------------------------------\n"); 510 510 511 511 rcu_read_lock(); 512 512 for_each_process_thread(g, p) { ··· 527 527 unsigned long flags; 528 528 529 529 #ifdef CONFIG_FAIR_GROUP_SCHED 530 - SEQ_printf(m, "\ncfs_rq[%d]:%s\n", cpu, task_group_path(cfs_rq->tg)); 530 + SEQ_printf(m, "\n"); 531 + SEQ_printf(m, "cfs_rq[%d]:%s\n", cpu, task_group_path(cfs_rq->tg)); 531 532 #else 532 - SEQ_printf(m, "\ncfs_rq[%d]:\n", cpu); 533 + SEQ_printf(m, "\n"); 534 + SEQ_printf(m, "cfs_rq[%d]:\n", cpu); 533 535 #endif 534 536 SEQ_printf(m, " .%-30s: %Ld.%06ld\n", "exec_clock", 535 537 SPLIT_NS(cfs_rq->exec_clock)); ··· 597 595 void print_rt_rq(struct seq_file *m, int cpu, struct rt_rq *rt_rq) 598 596 { 599 597 #ifdef CONFIG_RT_GROUP_SCHED 600 - SEQ_printf(m, "\nrt_rq[%d]:%s\n", cpu, task_group_path(rt_rq->tg)); 598 + SEQ_printf(m, "\n"); 599 + SEQ_printf(m, "rt_rq[%d]:%s\n", cpu, task_group_path(rt_rq->tg)); 601 600 #else 602 - SEQ_printf(m, "\nrt_rq[%d]:\n", cpu); 601 + SEQ_printf(m, "\n"); 602 + SEQ_printf(m, "rt_rq[%d]:\n", cpu); 603 603 #endif 604 604 605 605 #define P(x) \ ··· 628 624 { 629 625 struct dl_bw *dl_bw; 630 626 631 - SEQ_printf(m, "\ndl_rq[%d]:\n", cpu); 627 + SEQ_printf(m, "\n"); 628 + SEQ_printf(m, "dl_rq[%d]:\n", cpu); 632 629 633 630 #define PU(x) \ 634 631 SEQ_printf(m, " .%-30s: %lu\n", #x, (unsigned long)(dl_rq->x))