Thread (15 messages) 15 messages, 5 authors, 2008-12-27

Re: [PATCH] powerpc: add 16K/64K pages support for the 44x PPC32 architectures.

From: Ilya Yanok <hidden>
Date: 2008-12-11 01:52:29

Hi Benjamin,
Benjamin Herrenschmidt wrote:
quoted
quoted
I'm not sure about the above & PMD_MASK. Shouldn't we instead make it
not build if (PKMAP_BASE & PMD_MASK) != 0 ? 
      
 We separated the !4K_PAGES case here exactly because  (PKMAP_BASE & 
PMD_MASK) != 0 [see the comment to this chunk - why]. So, this'll turn 
out to be broken if we follow your suggestion. Are there any reasons 
why we should have PKMAP_BASE aligned on the PMD_SIZE boundary ?
    
No, you are right, so why do we need the & PMD_MASK in the 4k case ?

What I don't get is why do we need a different formula for 4k and 64k
but I might just be stupid :-)
  
Because we want full PTE table for PKMAP with 4K pages (it's pretty
small - only 512 pages so we really want to use all). And as current
code doesn't support PKMAP being in different PTE tables we want to
align to full PTE table not to lost part of it.
quoted
 These definitions seem to be related to the page table, so, as for me, 
then pgtable.h is the better place for them. Though, as you want; 
we'll move this to page_32.h.
    
Well, I like having them next to the pte_t/pgd_t definitions since they
relate directly to the size of those structures.
  
Well. But pte_t/pgd_t are actually in page.h not page_32.h (along with
pmd/pud for 64bit)... So maybe we need to put definitions for
PMD_T_LOG2/PUD_T_LOG2 too...

Regards, Ilya.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help