lkml.org 
[lkml]   [1997]   [Jan]   [3]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
SubjectIncreasing limits in kernel
DateFri, 03 Jan 1997 10:44:50 +0800
FromKevin Littlejohn <>
This seems to be a big one, and I'm hoping there'll be some movement on a 
permanent increase to the limits in the distributed kernel, but I'm 
betting it won't happen in a 2.0.x kernel  *shrug*.  In the meantime, I 
have a few questions coming from previous messages:

The changes we have made, inside the kernel, are as follows:

include/linux/net_alias.h - line 28, NET_ALIAS_MAX_SLOT = 512
include/linux/fs.h        - line 30, NR_OPEN = 1024
include/linux/fs.h        - line 39, NR_INODE = 8192
include/linux/fs.h        - line 40, NR_FILE = 4096
include/linux/limits.h    - line  4, NR_OPEN = 1024
include/linux/limits.h    - line  9, OPEN_MAX = 1024

My understanding here is that increasing NET_ALIAS_MAX_SLOT increases the 
number of aliases I can have on a single interface (seems a relatively 
easy patch), NR_OPEN seems to be defined in several places, and is the 
numbr of file descriptors a single process can hold open, OPEN_MAX is also 
llisted as "number of files a process can hold open", so I'm not sure what 
the difference is here, NR_FILE and NR_INODE are presumably filesystem (as 
opposed to network) related, although I had thought the difference was 
marginal.  Anyone who can fill me in on those?

In addition, I see a diff go through this list the other day, purporting 
to raise the limits to 2048 (which is described as a "bad thing"(tm) by 
others, who say (g)libc has a 1024-based limit to NR_OPEN built into it 
anyway - knowing where/how to change that could be worthwhile, if it's not 
going to break other things badly.  Said diff also contained:

a patch to include/asm-i386/resource.h that set INIT_NR_OPEN to be the max 
of NR_OPEN and 256, but I can't see _any_ other reference to INIT_NR_OPEN 
in the kernel off-hand, so I'm curious what this achieves

a higher NGROUPS_MAX - this looks like another little tweak, presumably it 
doesn't break anything too drastically?

an OPEN_MAX twice as high as NR_OPEN - how?  What's the difference between 
these two defines?

changes to posix_types.h - __FD_SETSIZE increased to 2048 (which is 
NR_OPEN in this patch), and changes to /usr/include/gnu/types.h - same 
change.  This one would appear to be a change to libc, in a sidewise sort 
of way, and looks to be the most likely candidate for breaking things.  
Can someone give an explanation of exactly what this does, and what 
repurcusions it's likely to have?

Basically, it seems like there's very little documentation for these 
changes.  I'd like to be able to help out here, but I'm a little in the 
dark myself :(  If anyone can answer even some of the questions above, I'd 
love to put together a web page or mini-FAQ explaining it all :)

KevinL
---
Kevin Littlejohn                                     darius@wantree.com.au
Wantree Development                                       tel:    481 4433
Perth, Western Australia 6000                             fax:    481 0393
"Hours of frustration punctuated by moments of sheer terror" - a.s.r.


\
 
 \ /
  Last update: 2005-03-22 12:38    [from the cache]
©2003-2008