Memory expansion problems

John Plocher plocher%sally at Sun.COM
Fri Apr 28 12:41:48 AEST 1989


In article <589 at tukki.jyu.fi> makela at tukki.jyu.fi (Otto J. Makela) writes:
|  <had uport 3.0e w/4Mb, ran OK.  Added another 4Mb, now won't boot>

Easy fix (It is a known - and fixed in 3.0e.1 - bug for 386 systems only):

1) Remove (either physically or cmos setup) the new 4Mb of memory.

2) Boot Unix - it will work correctly again.

3) type this command (as root):

	/etc/patch /unix Nbuf

   It should print  0  (that's zero)
   This means that the system dynamically figures out how much memory
   to allocate for disk buffers depending on how much real memory there is.
   When you have more than 8Mb this table allocates too much memory for
   buffers and the kernel runs out of alloc()able memory.  This table 
   can be found in /etc/atconf/modules/kernel/space.c for those brave 
   enuf to fix it [just make the numbers smaller]  :-)

4) Modify this to some non zero value (i.e., lets use 100Kb of buffers):

	/etc/patch /unix Nbuf 100

5) Modify the    #define NBUF 0   line in the kernel configuration file
   /usr/include/sys/kdef.h to use this value too.  This keeps this problem
   from biting you next time you reconfigure the system.

6) shut the system down

	/etc/shutdown -g0 -y

7) Add the extra 4Mb again

8) Reboot Unix and all should be well.

9) If desired, copy your boot diskette and patch that kernel too:
	diskcopy
	# put the new - unwriteprotected disk in the drive
	mount /dev/dsk/fd /mnt
	/etc/patch /mnt/unix Nbuf 100
	umount /mnt
	# take the disk out and put in a safe place

    -John Plocher



More information about the Comp.unix.microport mailing list