]> git.karo-electronics.de Git - karo-tx-linux.git/commit
arch/tile: allow building Linux with transparent huge pages enabled
authorChris Metcalf <cmetcalf@tilera.com>
Wed, 28 Mar 2012 17:59:18 +0000 (13:59 -0400)
committerChris Metcalf <cmetcalf@tilera.com>
Mon, 2 Apr 2012 19:32:28 +0000 (15:32 -0400)
commitce6153a563c1e6bf8ea30ae0d5cd362dd593edc4
tree474e21b68b41d575d65915c325c578ee952266af
parent2c3c0e4a7a90b3be0778695582011ee13d6c5ff6
arch/tile: allow building Linux with transparent huge pages enabled

The change adds some infrastructure for managing tile pmd's more generally,
using pte_pmd() and pmd_pte() methods to translate pmd values to and
from ptes, since on TILEPro a pmd is really just a nested structure
holding a pgd (aka pte).  Several existing pmd methods are moved into
this framework, and a whole raft of additional pmd accessors are defined
that are used by the transparent hugepage framework.

The tile PTE now has a "client2" bit.  The bit is used to indicate a
transparent huge page is in the process of being split into subpages.

This change also fixes a generic bug where the return value of the
generic pmdp_splitting_flush() was incorrect.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
arch/tile/include/asm/pgtable.h
arch/tile/include/asm/pgtable_32.h
arch/tile/include/asm/pgtable_64.h
arch/tile/include/hv/hypervisor.h
include/asm-generic/pgtable.h
mm/pgtable-generic.c