mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Nathan Zimmer <nzimmer@sgi.com>
To: mingo@redhat.com, peterz@infradead.org, tglx@linutronix.de,
	johnstul@us.ibm.com
Cc: linux-kernel@vger.kernel.org, Nathan Zimmer <nzimmer@sgi.com>
Subject: [PATCH RESEND 0/4] /proc/schedstat and /proc/sched_debug fail at 4096
Date: Tue, 15 Jan 2013 15:46:08 -0600	[thread overview]
Message-ID: <1358286372-13777-1-git-send-email-nzimmer@sgi.com> (raw)

When running with 4096 cores attemping to read /proc/schedstat,
/proc/sched_debug, /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.
Also thanks to Al Viro for pointing me in the right direction with the
iterator.

An solution considered but not tried for sched_stat and scheddebug would to be
create an alternative mechanism to single_open but rather then calling *_show
once it calls show once per possible cpu.  If someone feels strongly that is
the way to go I can give it a spin.

Nathan Zimmer (4):
  sched: /proc/sched_stat fails on very very large machines.
  sched: /proc/sched_debug fails on very very large machines.
  timer_list: split timer_list_show_tickdevices
  timer_list: Convert timer list to be a proper seq_file.

 kernel/sched/debug.c     |   84 +++++++++++++++++++++++++++++++++-----
 kernel/sched/stats.c     |   73 ++++++++++++++++++++++++---------
 kernel/time/timer_list.c |  100 +++++++++++++++++++++++++++++++++++++---------
 3 files changed, 207 insertions(+), 50 deletions(-)


             reply	other threads:[~2013-01-15 21:46 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-15 21:46 Nathan Zimmer [this message]
2013-01-15 21:46 ` [PATCH RESEND 1/4] sched: /proc/sched_stat fails on very very large machines Nathan Zimmer
2013-01-16 21:53   ` Andrew Morton
2013-01-17 22:36     ` Nathan Zimmer
2013-01-15 21:46 ` [PATCH RESEND 2/4] sched: /proc/sched_debug " Nathan Zimmer
2013-01-16 21:56   ` Andrew Morton
2013-01-15 21:46 ` [PATCH RESEND 3/4] timer_list: split timer_list_show_tickdevices Nathan Zimmer
2013-01-16 22:09   ` Andrew Morton
2013-01-15 21:46 ` [PATCH RESEND 4/4] timer_list: Convert timer list to be a proper seq_file Nathan Zimmer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1358286372-13777-1-git-send-email-nzimmer@sgi.com \
    --to=nzimmer@sgi.com \
    --cc=johnstul@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®