*BSD News Article 90405


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.ecn.uoknor.edu!feed1.news.erols.com!howland.erols.net!vixen.cso.uiuc.edu!usenet
From: Vlad <roubtsov@uiuc.edu>
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Recompile with maxusers 100 has no effect?  Can't run more then 38 processes?
Date: Thu, 06 Mar 1997 00:37:24 -0600
Organization: Baphomet's Throne
Lines: 47
Message-ID: <331E6624.41C67EA6@uiuc.edu>
References: <5fiekj$4d4$1@nntp2.ba.best.com> <331CC9E0.41C67EA6@troutmask.apl.washington.edu>
NNTP-Posting-Host: cfc2.mrl.uiuc.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 3.0 (X11; I; FreeBSD 2.1.5-RELEASE i386)
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:36615

Steven G. Kargl wrote:
> 
> Zenin wrote:
> >
> > In trying to recompile 2.1.7 the maxusers options seems to have no
> > effect.  I've set it to 100 and still if I run more then 38
> > processes I get the error:
> >         "bash: fork: Resource temporarily unavailable"
> >
> > Might I be hitting some silly max process per user quota? -Almost
> > all 38 are owned by one user, me.  If so, where can I adjust it or
> > turn it off?
> 
> kargl[279] limit
> cputime         unlimited
> filesize        unlimited
> datasize        65536 kbytes
> stacksize       8192 kbytes
> coredumpsize    unlimited
> memoryuse       24576 kbytes
> descriptors     64
> memorylocked    10106 kbytes
> maxproc         100
> 
> Yes, you're hitting a shell imposed limit.  The above is for tcsh.
> Bash probably has some type of limit.  You might try reading the
> man page or info file.

I had essentially the same question a while ago and someone pointed to
the right place: it is not set up in the kernel config file but rather
gets compiled in. Namely, observe the following extracts
from <sys/params.h>:
...
#define MAXUPRC         CHILD_MAX       /* max simultaneous processes */ 
...
and from <sys/syslimits.h>:
...
#ifndef CHILD_MAX
#define CHILD_MAX                  40   /* max simultaneous processes */
#endif
...

This is where your 38 comes from. Rather than recompile the kernel, a
"limit" (appropriate for your login shell) command in your .*rc file may
suffice.

Vlad.