To large page or not to large page

Jimi Xenidis jimix at watson.ibm.com
Sun Oct 2 22:19:09 EST 2005


>>>>> "BH" == Benjamin Herrenschmidt <benh at kernel.crashing.org> writes:

 BH> On Fri, 2005-09-30 at 20:43 -0400, Jimi Xenidis wrote:
 >> It seems as tho Linux will map the kernel with large pages if the
 >> processor allows it regardless if the lmb is sufficient to hold a
 >> large page, correct?
 >> 
 >> Is there some runtime option to force the use of 4K pages.
 >> 
 >> Ultimately, my desire is to define a 256Mig segment that, using a
 >> Hypervisor, that can be populated by shared pages that can physically
 >> belong to the  hypervisor or other partions/domains) and restrict the
 >> mappings to 4k.  I have some ideas, but am willing to hear any suggestions.

 BH> Does that segment has to be part of the linear mapping ?

Not sure what _you_ mean by "linear mapping".
More specifically I would like for:
  #define __pa(x) ((unsigned long)(x)-PAGE_OFFSET)
to work, and the segment  to be managed.
I think that is the linear map.

 BH> Can't it just be mapped afterward using a kernel virtual mapping
 BH> ?

Can it? given the use of __pa()?
Should I consider a new REGION_ID()?

 BH> Also, don't forget that the 64k pages patch won't support 4k
 BH> pages at all for performances reasons when CONFIG_PPC_64K_PAGES
 BH> is enabled (at least on processors that have HW support for 64k
 BH> pages) .

"at all", surely, IO space will require and continue to use 4k pages.

-JX

-- 
 "I got an idea, an idea so smart my head would explode if I even
  began to know what I was talking about." -- Peter Griffin (Family Guy)




More information about the Linuxppc64-dev mailing list