Date: Wed, 10 Aug 2011 09:38:36 +0000 From: Holger Kipp <Holger.Kipp@alogis.com> To: Jeremy Chadwick <freebsd@jdc.parodius.com> Cc: FreeBSD-STABLE Mailing List <freebsd-stable@freebsd.org>, Daniel Kalchev <daniel@digsys.bg> Subject: Re: 32GB limit per swap device? Message-ID: <84407276-7546-4ABE-A0EE-A5E82E1CC358@alogis.com> In-Reply-To: <20110810084759.GA32346@icarus.home.lan> References: <4E4143A6.6030307@digsys.bg> <20110809151646.GF1814@albert.catwhisker.org> <4E422F8A.1070508@digsys.bg> <20110810074759.GA30254@icarus.home.lan> <4E423CAC.20008@digsys.bg> <CFE743A4-A5FA-4AC8-B090-E1174EB49473@alogis.com> <20110810084759.GA32346@icarus.home.lan>
next in thread | previous in thread | raw e-mail | index | archive | help
Am 10.08.2011 um 10:47 schrieb Jeremy Chadwick: > On Wed, Aug 10, 2011 at 08:27:27AM +0000, Holger Kipp wrote: >> >> Am 10.08.2011 um 10:09 schrieb Daniel Kalchev: >> >>> On 10.08.11 10:47, Jeremy Chadwick wrote: >>>> On Wed, Aug 10, 2011 at 10:13:14AM +0300, Daniel Kalchev wrote: >>>>> I am more concerned that with 32GB of swap in single device I could n= ot dump kernel core, with 64GB of RAM. >>>> My apologies if I've misunderstood something, but why does this of any >>>> concern? Machine has 64GB RAM. You have a single swap slice that's >>>> effectively 32GB. How is a kernel panic worth of 64GB RAM going to fi= t >>>> into a 32GB swap slice? >>>> >>> The swap partitions are 64GB, it is only that FreeBSD refuses to use mo= re than 32GB of each for swap. But.. it might happily dump core to the whol= e partition, tests will show. >> >> I doubt it. Have you tried increasing kern.maxswzone? It is the size in = KB (for 32GB it is set to 33554432). >> kern.maxswzone: Maximum memory for swap metadata > > The variable is set to 32MBytes, not 32GBytes. The default size is > defined as variable VM_SWZONE_SIZE_MAX, which is 32*1024*1024 per > sys/i386/include/param.h and sys/amd64/include/param.h. > > Furthermore, this variable does not do what you're implying. Ah, then I misinterpreted the output of "man loader" which states: kern.maxswzone Limits the amount of KVM to be used to hold swap meta information, which directly governs the maximum amount o= f swap the system can support. > So we're back to where we started: swap slices/partitions can be greater > than 32GBytes in size, but "something" is limiting the maximum amount of > memory which can be dumped to a single swap swap to 32GBytes. Anyway, there is one thing in /usr/src/sys/vm/swap_pager.c (so if you get t= his warning (reducing size to maximum of... per swap unit)), this might be the reason: /* * If we go beyond this, we get overflows in the radix * tree bitmap code. */ mblocks =3D 0x40000000 / BLIST_META_RADIX; if (nblks > mblocks) { printf("WARNING: reducing size to maximum of %lu blocks per= swap unit\n", mblocks); nblks =3D mblocks; } Hope this is of some help. Best regards, Holger -- Holger Kipp Diplom-Mathematiker Senior Consultant Tel. : +49 30 436 58 114 Fax. : +49 30 436 58 214 Mobil: +49 178 36 58 114 Email: holger.kipp@alogis.com alogis AG Alt-Moabit 90b D-10559 Berlin web : http://www.alogis.com ---------------------------------------------------------- alogis AG Sitz/Registergericht: Berlin/AG Charlottenburg, HRB 71484 Vorstand: Arne Friedrichs, Joern Samuelson Aufsichtsratsvorsitzender: Reinhard Mielke
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?84407276-7546-4ABE-A0EE-A5E82E1CC358>