[comp.sys.sun] panic: memall intrans|want is MAXUSERS problem

Ralph.Hyre@ius3.ius.cs.cmu.edu (11/23/88)

>144 buffers instead of the 95 buffers it used to allocate w/ 8mb, then it
>gets the following panic message.....

panic: memall intrans|want

param.c in the kernel build directory needs to be changed.  I don't recall
the correct parameters or values offhand.  I fixed it by bumping MAXUSERS
to 16 or above.
					- Ralph W. Hyre, Jr.
Internet: ralphw@ius3.cs.cmu.edu    Phone:(412) CMU-BUGS
Amateur Packet Radio: N3FGW@W2XO, or c/o W3VC, CMU Radio Club, Pittsburgh, PA

joe@uunet.uu.net (Joe Michel-Angelo) (12/09/88)

Ralph.Hyre@ius3.ius.cs.cmu.edu:
> 
> panic: memall intrans|want
> 
> param.c in the kernel build directory needs to be changed.  I don't recall
> the correct parameters or values offhand.  I fixed it by bumping MAXUSERS
> to 16 or above.

Actually, Sun has a patch to sys/OBJ/movc.o that corrects the problem.
Contact sun!hotline for details or send me mail. Willy doesn't want to
post the binary patch here -- and I don't blame him a bit!

	Joe Angelo -- Senior Systems Engineer/Systems Manager
	at Teknekron Software Systems, Palo Alto 415-325-1025
	joe@tss.com - uunet!tekbspa!joe - tekbspa!joe@uunet.uu.net

sgf@lfm.brown.edu (Sam Fulcomer) (12/20/88)

yes, MAXUSERS needs to be changed, but to a lower, not higher value. The
problem is that in older (3.X, maybe X < 5?) OS versions the kernel zero
routine didn't properly zero buffer space over some (don't remember)
address (the beast was using some 16(?)-bit value in addressing). (This
only occurs if you toss a lot of memory into the machine; more memory,
more buffer space.) 

Ther memory wasn't properly zeroed, and memall(oc) would see it as already
allocated.

The simplest solution is to run a kernel with the fix (I think there's a
patch to the kernel's bzero() around). The better fix is to apply local
kludges to the already kludged param.c. My own feeling is that MAXUSERS
should be kept low (like, you know <= 4). The other values (and
determining formulas) should be adjusted as needed for the particular
system. There's just too much there to depend on one variable.

The ugliest thing that happens if you bump MAXUSERS up is that NPROC gets
ridiculously high. Try:

#! /bin/csh

while (1)
	this_file &
end

then reboot your machine after you lose patience with an uptime.  

param.c makes about as much sense as the irs' formulae for
income-averaging.

sam
sgf@csc.brown.edu