Re: [patch 2/6] CONFIG_HIGHPTE vs. sub-page page tables.

Martin Schwidefsky
2007-10-26T07:42:58Z

On Fri, 2007-10-26 at 06:47 +1000, Benjamin Herrenschmidt wrote:
> > Solution: The only solution I found to this dilemma is a new typedef:
> > a pgtable_t. For s390 pgtable_t will be a (pte *) - to be introduced
> > with a later patch. For everybody else it will be a (struct page *).
> > The additional problem with the initialization of the ptl lock and the
> > NR_PAGETABLE accounting is solved with a constructor pgtable_page_ctor
> > and a destructor pgtable_page_dtor. The page table allocation and free
> > functions need to call these two whenever a page table page is allocated
> > or freed. pmd_populate will get a pgtable_t instead of a struct page
> > pointer. To get the pgtable_t back from a pmd entry that has been
> > installed with pmd_populate a new function pmd_pgtable is added. It
> > replaces the pmd_page call in free_pte_range and apply_to_pte_range.
>
> Interesting. That means I don't need to have a PTE page to be a struct
> page anymore ? I can have good use for that on powerpc as well...

That would be good news. I'm curious, can you elaborate on what the use
case is?