[PATCH V4 1/2] mm: Update generic gup implementation to handle hugepage directory
David Miller
davem at davemloft.net
Sun Nov 2 06:21:12 AEDT 2014
From: "Aneesh Kumar K.V" <aneesh.kumar at linux.vnet.ibm.com>
Date: Wed, 29 Oct 2014 13:49:44 +0530
> Update generic gup implementation with powerpc specific details.
> On powerpc at pmd level we can have hugepte, normal pmd pointer
> or a pointer to the hugepage directory.
>
> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.vnet.ibm.com>
> ---
> Changes from V3:
> * Drop arm and arm64 changes
> * Add hugepte assumption to the function
Wait, what are you doing here?
You can't assume that a pmd is something you can just go:
__pte(pmd_val(x))
with. Not at all.
You have to use the correct pmd_*() accessors at all times on
this object.
Platforms can encode PMDs however they like. In fact, on sparc64,
we used to have 32-bit PMDs with a special encoding for huge
PMDs that looked nothing at all like a 64-bit PTE.
Please code this in a portable manner to support the powerpc
facilities, don't add assumptions that are not necessarily
universally true.
More information about the Linuxppc-dev
mailing list