Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Nov 2003 15:30:36 -0800 (PST)
From:      Jason Kuri <jay@oneway.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/53350: fill up a malloc md-disk on 5.1-R causes panic
Message-ID:  <200311152330.hAFNUaAM029475@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/53350; it has been noted by GNATS.

From: Jason Kuri <jay@oneway.com>
To: "Brian K. White" <brian@aljex.com>
Cc: <freebsd-gnats-submit@FreeBSD.org>
Subject: Re: kern/53350: fill up a malloc md-disk on 5.1-R causes panic
Date: Sat, 15 Nov 2003 17:24:31 -0600

 Hello Brian,
 
 This is not a bug, per se.   You see, though you have 1G of ram in the
 machine, the system only reserves a certain amount for kernel memory
 (max 200M by default).  MD-disks are entirely stored in kernel memory
 and they do not auto-allocate, so you can create a 768M MD disk, but
 the memory in the kernel is not actually allocated for it until you try
 to use it.
 
 The end result of all this is that you can create a large MD disk, and
 it will work... until you try to fill it up... at which point it will
 panic the kernel because the kernel has run out of memory.
 
 The way to test this is to add the -o reserve option to the mdconfig
 command.  It will fail/panic immediately instead of waiting until you
 fill it up.  That option requires the memory to be pre-allocated rather
 than allocated as needed.
 
 The way to fix it is to change two options in your kernel config:
 
 options VM_KMEM_SIZE_MAX    "(800*1024*1024)"
 options VM_KMEM_SIZE_SCALE "2"
 
 These will increase the amount of space allocated to the kernel...
 VM_KMEM_SIZE_SCALE is a scaling factor.... meaning that the kernel will
 get physical-memory/VM_KMEM_SIZE_SCALE up to VM_KMEM_SIZE_MAX... which
 in the above case is 800M.   The above settings on a 1G machine would
 result in you having 512M for the kernel... Please note, however, that
 this memory is what is allocated for EVERYTHING in the kernel... so if
 you fill the memory with an MD-disk of 512M, you would probably crash
 again.
 
 I don't know what will happen if you set VM_KMEM_SIZE_SCALE = 1... I've
 only ever used about 400M of MD-disk on a 2G machine... in which case
 VM_KMEM_SIZE_SCALE=2 is still ok.  You'll have to try it out and see...
   let me know how it goes.
 
 Please read this:
 
 http://unix.derkeiler.com/Mailing-Lists/FreeBSD/current/2003-06/
 1599.html
 
 to understand how it works a bit more.
 
 And good luck.
 
 Jay
 
 
 
 On Nov 13, 2003, at 5:30 PM, Brian K. White wrote:
 
 > Re: kern/53350: fill up a malloc md-disk on 5.1-R causes panic
 >
 > I get the same thing on a 1G machine when trying to use a 768 M
 > ramdisk when
 > the ramdisk is only 25% full.
 > It never fails at exactly the same place, but always within a minute
 > or two
 > and it never gets anywhere close to filling up the md-disk.
 >
 > In my case I was creating the 768 meg malloc disc and trying to copy
 > /usr/src into it.
 > initially I tried a couple times with midnight commander, and after
 > that
 > crashed twice, I tried just using tar
 >
 > mdconfig -a -t malloc -s 768m
 > newfs -U /dev/md0
 > mount /dev/md0 /md0
 > cd /usr/src ;tar cvf - * |(cd /md0 ;tar xvf - )
 >
 > /usr/src is only about 350 megs so it should fit easy, but just in
 > case some
 > difference in block sizes cause the same data to take up mor room on
 > md0
 > than it does on the hard drive, I watched df in another console while
 > it was
 > copying.
 >
 > repeatedly looking at df in another consle showed the disk only
 > reaching
 > about 25% full at the time of kernel panic.
 >
 > I got some different messages each time
 > one time I just got this line repeated scrolling up the console untill
 > I
 > decided to power off:
 >   initiate_write_filepage: already started
 >
 > the last time I got this:
 >   panic: kmem_malloc(4096) kmem_map too small: 275251200 total
 > allocated
 >   syncing disks, buffers remaining... 7095
 >   panic: initiate_write_inodeblock_ufs2: already started
 >
 > This is the 5.1 that is on the 5.1 iso as of about Nov/03/2003
 >
 > Brian K. White  --  brian@aljex.com  --  http://www.aljex.com/bkw/
 > +++++[>+++[>+++++>+++++++<<-]<-]>>+.>.+++++.+++++++.-.[>+<---]>++.
 > filePro BBx  Linux SCO  Prosper/FACTS AutoCAD  #callahans Satriani
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311152330.hAFNUaAM029475>