UMA_MD_SMALL_ALLOC
Nathan Whitehorn
nathanw at uchicago.edu
Wed May 7 15:22:27 UTC 2008
Peter Grehan wrote:
> 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).
Oh, great. That would be really convenient.
>> 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 ?
Yep. I'll post some patches later, once I've cleaned them up a little
(they are a bit littered with printf(), /* code */ and #if 0 at the moment).
-Nathan
More information about the freebsd-ppc
mailing list