timer_list: Convert timer list to be a proper seq_file
authorNathan Zimmer <nzimmer@sgi.com>
Wed, 27 Mar 2013 00:56:30 +0000 (19:56 -0500)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 17 Apr 2013 18:51:02 +0000 (20:51 +0200)
commitb3956a896ea57f25cacd74708b8fab611543a81d
treeb80f2805317d0faa493086d89abaaccfe6143a69
parent60cf7ea849e77c8782dee147cfb8c38d1984236e
timer_list: Convert timer list to be a proper seq_file

When running with 4096 cores attemping to read /proc/timer_list will fail
with an ENOMEM condition.  On a sufficantly large systems the total amount
of data is more then 4mb, so it won't fit into a single buffer.  The
failure can also occur on smaller systems when memory fragmentation is
high as reported by Dave Jones.

Convert /proc/timer_list to a proper seq_file with its own iterator.  This
is a little more complex given that we have to make two passes with two
separate headers.

sysrq_timer_list_show also needed to be updated to reflect the fact that
now timer_list_show only does one cpu at at time.

Signed-off-by: Nathan Zimmer <nzimmer@sgi.com>
Reported-by: Dave Jones <davej@redhat.com>
Cc: John Stultz <johnstul@us.ibm.com>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Link: http://lkml.kernel.org/r/1364345790-14577-3-git-send-email-nzimmer@sgi.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
kernel/time/timer_list.c