Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 May 2006 13:15:02 +0200
From:      Fabian Keil <freebsd-listen@fabiankeil.de>
To:        Iasen Kostov <tbyte@otel.net>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: kmem leak in tmpmfs?
Message-ID:  <20060526131502.2a2f984d@localhost>
In-Reply-To: <1148639184.78660.32.camel@DraGoN.OTEL.net>
References:  <wpy7wq6qlh.fsf@heho.labo> <20060525205414.GC30137@xor.obsecurity.org> <1148639184.78660.32.camel@DraGoN.OTEL.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_jY6Le5k+toIzlxHvx5bAX/y
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

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 :
> > >=20
> > > /etc/periodic/weekly/310.locate panics with
> > >=20
> > >   panic: kmem_malloc(4096): kmem_map too small: 335544320 total
> > > allocated
> >=20
> > 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=3D"1073741824" (I got 2G of RAM)
> (setting vm.kmem_size directly panices kernel at boot if I remember
> correctly).
>=20
> 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.

Fabian
--=20
http://www.fabiankeil.de/

--Sig_jY6Le5k+toIzlxHvx5bAX/y
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFEduM7jV8GA4rMKUQRAqG2AKDBdtkz0Vjq2o/6U6vip51GMhE2XwCfdg0z
9clYMbd0gbW9TTPza0X7psk=
=AYvJ
-----END PGP SIGNATURE-----

--Sig_jY6Le5k+toIzlxHvx5bAX/y--



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