svn commit: r208589 - head/sys/mips/mips

Alan Cox alc at cs.rice.edu
Mon Jun 7 21:29:56 UTC 2010


On 6/7/2010 3:28 PM, Kostik Belousov wrote:
> Selecting a random message in the thread to ask my question.
> Is the issue that page table pages should be allocated from the specific
> physical region of the memory ? If yes, doesn't i386 PAE has similar
> issue with page directory pointer table ? I see a KASSERT in i386
> pmap that verifies that the allocated table is below 4G, but I do not
> understand how uma ensures the constraint (I suspect that it does not).
>    

For i386 PAE, the UMA backend allocator uses kmem_alloc_contig() to 
ensure that the memory is below 4G.  The crucial difference between i386 
PAE and MIPS is that for i386 PAE only the top-level table needs to be 
below a specific address threshold.  Moreover, this level is allocated 
in a place, pmap_pinit(), where we are allowed to sleep.

Alan



More information about the freebsd-mips mailing list