Date: Fri, 26 May 2006 14:24:57 +0300 From: Iasen Kostov <tbyte@otel.net> To: Fabian Keil <freebsd-listen@fabiankeil.de> Cc: freebsd-stable@freebsd.org Subject: Re: kmem leak in tmpmfs? Message-ID: <1148642697.78660.41.camel@DraGoN.OTEL.net> In-Reply-To: <20060526131502.2a2f984d@localhost> References: <wpy7wq6qlh.fsf@heho.labo> <20060525205414.GC30137@xor.obsecurity.org> <1148639184.78660.32.camel@DraGoN.OTEL.net> <20060526131502.2a2f984d@localhost>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 2006-05-26 at 13:15 +0200, Fabian Keil wrote: > Iasen Kostov <tbyte@otel.net> wrote: > > > On Thu, 2006-05-25 at 16:54 -0400, Kris Kennaway wrote: > > > On Thu, May 25, 2006 at 06:01:30PM +0200, Arno J. Klaassen wrote: > > > > > I get a very easy to reproduce panic on 6.1-STABLE : > > > > > > > > /etc/periodic/weekly/310.locate panics with > > > > > > > > panic: kmem_malloc(4096): kmem_map too small: 335544320 total > > > > allocated > > > > > > It looks like you are using a malloc-backed md and you do not have > > > enough RAM to handle the size. Perhaps tmpmfs does not use swap > > > backing, as it is supposed to? > > > First of all if there is not enough kmem (not just plain ram > > I think) kernel should not allow disk creation in first place, second > > - I think (although there could be some ... reason for that) it's > > stupid way to say "I don't have more kmem" by panicing :). Better way > > will be just to fail disk operation of that FS with "Disk is full" or > > something like that. At home I tried to raise kmem like that: > > "vm.kmem_size_max="1073741824" (I got 2G of RAM) > > (setting vm.kmem_size directly panices kernel at boot if I remember > > correctly). > > > > but for my surprise kernel panices at exact same allocated md disk > > space with the same panic as the original poster's. Is it possible > > that I should rise KVA_PAGES too ? And I don't think its documented > > anywhere (of course I've tried googling and it's always possible that > > I've missed something :). All this was on FreeBSD 6.0. > > man mdconfig mentions the problem: > > malloc Storage for this type of memory disk is allocated with > malloc(9). This limits the size to the malloc bucket > limit in the kernel. If the -o reserve option is not > set, creating and filling a large malloc-backed memory > disk is a very easy way to panic a system. > > Use a swap backed disk and the problem will disappear. I ment KVA_PAGES (If it is the limit). But may be "malloc bucket limit" (which I don't realy understand what it means) has something to do with it ? But whatever is the cause I think it no good practice to leave such easy ways to panic the kernel unsecured/pached/fixed. And I wander why even when I set kmem_size_max to 1G kernel still panices around 350MB allocated md space ? I mean what is the real issue there ? Regards.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1148642697.78660.41.camel>