Date: Fri, 04 Jun 2010 15:51:24 -0500 From: Alan Cox <alc@cs.rice.edu> To: John Baldwin <jhb@freebsd.org> Cc: Matthew D Fleming <mdf356@gmail.com>, Clifton Royston <cliftonr@lava.net>, alc@freebsd.org, Garrett Cooper <yanefbsd@gmail.com>, freebsd-stable@freebsd.org, Jeremy Chadwick <freebsd@jdc.parodius.com> Subject: Re: Locking a file backed mdconfig into memory Message-ID: <4C09674C.10009@cs.rice.edu> In-Reply-To: <201006041453.36467.jhb@freebsd.org> References: <201005272348.o4RNmgWh014243@hugeraid.jetcafe.org> <20100604153210.GA8522@amaretto> <4C093EB5.3060406@cs.rice.edu> <201006041453.36467.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 6/4/2010 1:53 PM, John Baldwin wrote: > On Friday 04 June 2010 1:58:13 pm Alan Cox wrote: > >> Matthew D Fleming wrote: >> >>> On Fri, Jun 04, 2010 at 08:20:49AM -0400, John Baldwin wrote: >>> >>> >>>> Hmmm, I would just try increasing NKPT then. You might have to poke >>>> around in sys/amd64 to see what the default size is and how to tune >>>> it. >>>> >>>> >>> When Isilon did the stable/7 merge and amd64 default NKPT changed from >>> 240 to 32 amd64 started having weird pmap issues during boot. At panic >>> time the stack wasn't very useful, and I didn't finish debugging the >>> issue since eventually I just had to get something working. We just >>> reverted NKPT to 240 and it worked for us. I didn't see an anything in >>> optsions.amd64 so I hard-coded it in amd64/include/pmap.h. >>> >>> Supposedly amd64 can deal with a small NKPT and grow dynamically, but it >>> didn't seem to work for us. :-( Perhaps when we do the next merge >>> project I'll have a few days to devote to debugging the root cause. >>> >>> >> NKPT controls the number of page table pages that are initially >> allocated at the bottom of the top 2GB of the kernel address space. >> However, the vast majority of the kernel address space, 510GB in FreeBSD >> >=7.3, is below these page table pages. The page table pages for this >> region are dynamically allocated as needed. >> >> If you're booting a kernel and modules greater than 64GB in size, then I >> can certainly see why you would need to increase NKPT. >> > 64GB seems like a lot of address space, I would not expect that to be > completely used by kernel and modules. I think earlier in the thread someone > said they had problems with a "mere" 295MB mfsroot. > > Oops. I meant to say 64MB. :-) >> John, is there some way to know at boot time how big the kernel and >> modules were? Then, we could probably eliminate NKPT. >> > I think the loader knows, so it could pass that info to the kernel. > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C09674C.10009>