]> 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>
Fri, 30 Mar 2012 22:55:19 +0000 (18:55 -0400)
commita070c609244b3e9547a41cfcf7182b780c17a61f
treebc4ce993922858f56e8406f2cbd4235c0a1110b0
parentaf8168fc5055afef6ef029e879669ede39a9bca0
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