mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: edwardsg@sgi.com (Greg Edwards)
To: linux-kernel@vger.kernel.org
Cc: thockin@sun.com
Subject: [PATCH] calculate NGROUPS_PER_BLOCK from PAGE_SIZE
Date: Tue, 11 May 2004 12:49:45 -0500	[thread overview]
Message-ID: <20040511174944.GA26708@sgi.com> (raw)

On ia64, EXEC_PAGESIZE (max page size) is 65536, but the default page
size is 16k.  This results in NGROUPS_PER_BLOCK in include/linux/sched.h
being calculated incorrectly when the page size is anything other than
64k.  For example, on a 16k page size kernel, a setgroups() call with a
gidsetsize of 65536 will end up walking over memory since only 1/4 of
the needed pages were allocated for the blocks[] array in the group_info
struct.

Patch below calculates NGROUPS_PER_BLOCK from PAGE_SIZE instead.

Greg


===== include/linux/sched.h 1.210 vs edited =====
--- 1.210/include/linux/sched.h	Mon May 10 06:25:34 2004
+++ edited/include/linux/sched.h	Tue May 11 11:45:29 2004
@@ -352,7 +352,7 @@
 void exit_io_context(void);
 
 #define NGROUPS_SMALL		32
-#define NGROUPS_PER_BLOCK	((int)(EXEC_PAGESIZE / sizeof(gid_t)))
+#define NGROUPS_PER_BLOCK	((int)(PAGE_SIZE / sizeof(gid_t)))
 struct group_info {
 	int ngroups;
 	atomic_t usage;

             reply	other threads:[~2004-05-11 17:49 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-11 17:49 Greg Edwards [this message]
2004-05-12  0:23 ` Andrew Morton

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=20040511174944.GA26708@sgi.com \
    --to=edwardsg@sgi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=thockin@sun.com \
    /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®