On Wed, Aug 15, 2012 at 05:32:03PM -0400, Dan Plassche wrote: > On Mon, Aug 13, 2012 at 9:28 PM, Julian Elischer <jul...@freebsd.org> > wrote: > > > you will also have to change PID_MAX (spelling?) to be 60000 > > I have considered making this a tunable.. > > If you don't then the shell in the 1.1.5.1 environment will not be able to > > handle when a child > > get s a pid of > 16 bits and it will not be able to wait on it. so it will > > suspend for ever. > > teh result is that you can not complete a "make world". > > The shell hangs as you described on "make world" when the PID > hits 32768. Looks like this was the old limit and things changed > around release 3. > > I went to recompile the kernel with "define PID_MAX 30000" in > /usr/src/sys/sys/proc.h and got a new build error that I'm still > trying to resolve: > > In file included from /usr/src/sys/sys/buf.h:258, > from /usr/src/sys/i386/i386/genassym.c:47: > > /usr/src/sys/sys/proc.h:670: error: expected '=', ',', ';', > 'asm' or '__attribute__' before 'PID_MAX' > > /usr/src/sys/sys/proc.h:769: warning data definition has no > type or storage class > > /usr/src/sys/sys/proc.h:769: warning: type defaults to 'int' > in declaration of 'pidhashtbl' > > *** Error code 1 > > Line 670 in proc.h is the define PID_MAX line. I have the > feeling I may be missing something obvious here, but I haven't > been able to sort out the problem.
Since you did not provided exact diff of your change, I cannot comment on what goes wrong. Anyway, just merge the r239301 locally and use sysctl kern.pid_max.
pgpqAP5C0kHZr.pgp
Description: PGP signature