What are the ramifications of increasing NGROUPS?

Larry Philps larry at hcr.UUCP
Thu Sep 8 23:38:25 AEST 1988


In article <10573 at ulysses.homer.nj.att.com> ekrell at hector.UUCP (Eduardo Krell) writes:
>In article <21258 at tut.cis.ohio-state.edu> karl at triceratops.cis.ohio-state.edu (Karl Kleinpaste) writes:
>
>>I am inclined to send NGROUPS up quite a ways, possibly to 100 or higher.
>>Can I get away with recompiling just the kernel and /bin/login?
>
>I don't think so since the groups are kept in the user structure.  You would
>have to recompile anything that depends on the size of the user structure.
>
>You should consider the fact that it's just an array that gets searched
>lineary. Linear search is OK with 8 or 20 groups, but 100?
>    
>Eduardo Krell                   AT&T Bell Laboratories, Murray Hill, NJ

One other consideration is that by increasing the size of your u-block by any
significant amount you will decrease the size of your per-process kernel
stack.  You should check the size of both the old and new user blocks, and if
the new one crosses a page boundary that the old one did not, then increase
UPAGES by 1 as well in machine/machparam.h.  If you don't you may start start
getting random "kernel stack invalid" panics.

One more point, I increased USIZE once and the kernel Makefile did not contain
a dependency on machparam.h for assym.s.  Thus genassym.c did not get compiled
and run, and thus my locore.o did not agreed with the rest of the kernel on the
structure of the user block, and amazingly enough things stopped working.
Watch out!

Larry Philps                             HCR Corporation
130 Bloor St. West, 10th floor           Toronto, Ontario.  M5S 1N5
(416) 922-1937                           {utzoo,utcsri,decvax,ihnp4}!hcr!larry



More information about the Comp.unix.wizards mailing list