G5 Bridge-mode MMU
Peter Grehan
grehan at freebsd.org
Tue Apr 15 16:51:30 UTC 2008
Hi Marcel,
> There's a bigger problem though: the current AIM pmap code and
> exception handling is broken for kernel stacks.
I've not seen any evidence of this. Granted, I've only tested with
psim, but I can safely access all of kstack0's virtual address space.
All of the stack pages are wired, as are the mappings. Where are the DSI
exceptions occurring ?
Stack *overflow* exception handling may be busted, but that is a
challenging problem to get right.
> Also, with process address space limited to 2G
Where's that limitation ? If so, that's a bug: it should be 4G.
> I wonder why we
> keep swapping all segment registers and not just the lower 8?
As above. That was taken from NetBSD to give the full 4G address space
for users. It used to be the high 8 seg regs, since the lower 2G was
either 1:1 BAT-mapped memory or PCI mem space.
> Related: how hard would it be to map the kernel above 2G and
> eliminate the SR swap in the exception handlers (but do it on
> context switches)?
You would have to eliminate the 1:1 mapping. I know this was done in
the bookE port, and it is painful to have two kernel ABIs.
How about the corollary: how hard is it to get the bookE port to use a
separate address space for the kernel ?
later,
Peter.
More information about the freebsd-ppc
mailing list