More trapframe panics

Warner Losh imp at bsdimp.com
Sun Jan 26 18:54:14 UTC 2014


On Jan 26, 2014, at 9:04 AM, Juli Mallett wrote:

> On Sun, Jan 26, 2014 at 7:07 AM, Jan Bramkamp <crest at rlwinm.de> wrote:
>> 
>> Would increasing KSTACK_PAGES from two to three or four help? What are
>> the trade-offs involved in choosing KSTACK_PAGES for something like the
>> EdgeMax Lite?
> 
> 
> That's exactly what needs to happen in all 64-bit MIPS kernels.  Unlike
> some other architectures,  KSTACK_PAGES cannot simply be increased,
> however.  All of the code which handles loading the kernel stack and
> keeping it mapped, etc., assumes that it takes up exactly one TLB entry,
> i.e. 2 pages.  One could simply double KSTACK_PAGES for 64-bit builds and
> modify the code to support the case of 2 or 4 pages, which would keep the
> code as gross as it is today and not buy much flexibility, but might be
> worthwhile as a short-term fix.  Being able to support arbitrary values of
> KSTACK_PAGES (or at least arbitrary multiples of 2 up to the maximum number
> of wired TLB entries times 2) would be better.

I hacked together a kludge that quadrupled this by going to the next larger page size for stack pages in the TLB, but hit something ugly when I did that... But I've lost that code, so maybe I should try again to see if I'm more clever the second time.

This is one of the things that makes it hard to have a nice native build server on mips64...

Warner



More information about the freebsd-mips mailing list