From: Andrew Morton <akpm@digeo.com>
To: davidm@hpl.hp.com
Cc: linux-kernel@vger.kernel.org
Subject: Re: proc_misc.c bug
Date: Thu, 10 Apr 2003 15:18:57 -0700 [thread overview]
Message-ID: <20030410151857.7ba8f484.akpm@digeo.com> (raw)
In-Reply-To: <200304102202.h3AM2YH3021747@napali.hpl.hp.com>
David Mosberger <davidm@napali.hpl.hp.com> wrote:
>
> interrupts_open() can easily try to kmalloc() more memory than
> supported by kmalloc. E.g., with 16KB page size and NR_CPUS==64, it
> would try to allocate 147456 bytes.
>
> The workaround below is to allocate 4KB per 8 CPUs. Not really a
> solution, but the fundamental problem is that /proc/interrupts
> shouldn't use a fixed buffer size in the first place. I suppose
> another solution would be to use vmalloc() instead. It all feels like
> bandaids though.
>
> --david
>
> ===== fs/proc/proc_misc.c 1.71 vs edited =====
> --- 1.71/fs/proc/proc_misc.c Sat Mar 22 22:14:49 2003
> +++ edited/fs/proc/proc_misc.c Thu Apr 10 14:35:16 2003
> @@ -388,7 +388,7 @@
> extern int show_interrupts(struct seq_file *p, void *v);
> static int interrupts_open(struct inode *inode, struct file *file)
> {
> - unsigned size = PAGE_SIZE * (1 + NR_CPUS / 8);
> + unsigned size = 4096 * (1 + NR_CPUS / 8);
urgh, consider me thwapped.
There continue to be a lot of places where we assume that pages are 4k (eg:
sizing of the free page reserves). But few are as fatal as this one...
Thanks.
prev parent reply other threads:[~2003-04-10 22:07 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-04-10 22:02 David Mosberger
2003-04-10 21:44 ` Alan Cox
2003-04-10 22:49 ` Randy.Dunlap
2003-04-11 5:01 ` Randy.Dunlap
2003-04-11 5:28 ` Andrew Morton
2003-04-11 5:41 ` David Mosberger
2003-04-11 5:46 ` Zwane Mwaikambo
2003-04-11 17:29 ` Randy.Dunlap
2003-04-11 18:32 ` David Mosberger
2003-04-10 22:53 ` Andrew Morton
2003-04-11 0:27 ` David Mosberger
2003-04-10 22:18 ` Andrew Morton [this message]
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=20030410151857.7ba8f484.akpm@digeo.com \
--to=akpm@digeo.com \
--cc=davidm@hpl.hp.com \
--cc=linux-kernel@vger.kernel.org \
/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®