UMA_MD_SMALL_ALLOC
Peter Grehan
grehan at freebsd.org
Wed May 7 15:18:55 UTC 2008
Hi Nathan,
> In doing the G5 port, I have a problem with the UMA_MD_SMALL_ALLOC
> option. Because the G5 does not have BAT, this is broken. Even if we
> were to emulate it with pages, this is not a useful thing to have, since
> the point of the option would be defeated. But removing it would
> pessimize the G3/G4 port (the AIM code also panics late in boot without
> it, but that is a separate issue).
>
> There doesn't seem to be a way to twiddle it at runtime, which is a
> major problem if we want to have a single kernel running on all OEA
> machines. So I'm not sure what to do. Thoughts?
A long time ago I talked to Alan Cox about modifying this option so it
could be done at run-time, and he seemed agreeable. The mips port has a
similar issue in that only the lower 512MB of RAM is direct-mapped, so a
run-time decision would help them too (though it would be based on free
pages and not processor variant).
> Also, an update on the G5 port: the PMAP stuff is done to the point
> where the kernel boots all the way to panicing about not having a PIC,
> which is late in the boot process and implies that only device support
> remains. Trap handling is up and running as well. And (with the
> exception of UMA_MD_SMALL_ALLOC) the same kernel also boots on my G3.
Fantastic ! Post some patches, I'll give it a try.
Have you changed the sync_icache code to dynamically switch to 128
bytes for the G5 ?
later,
Peter.
More information about the freebsd-ppc
mailing list