[PATCH V4 1/6] mm: Introduce a general RCU get_user_pages_fast.

Aneesh Kumar K.V aneesh.kumar at linux.vnet.ibm.com
Sun Oct 12 22:15:24 PDT 2014

Andrea Arcangeli <aarcange at redhat.com> writes:

> Hi Steve,
> On Fri, Sep 26, 2014 at 03:03:48PM +0100, Steve Capper wrote:
>> This patch provides a general RCU implementation of get_user_pages_fast
>> that can be used by architectures that perform hardware broadcast of
>> TLB invalidations.
>> It is based heavily on the PowerPC implementation by Nick Piggin.
> It'd be nice if you could also at the same time apply it to sparc and
> powerpc in this same patchset to show the effectiveness of having a
> generic version. Because if it's not a trivial drop-in replacement,
> then this should go in arch/arm* instead of mm/gup.c...

on ppc64 we have one challenge, we do need to support hugepd. At the pmd
level we can have hugepte, normal pmd pointer or a pointer to hugepage
directory which is used in case of some sub-architectures/platforms. ie,
the below part of gup implementation in ppc64

else if (is_hugepd(pmdp)) {
	if (!gup_hugepd((hugepd_t *)pmdp, PMD_SHIFT,
			addr, next, write, pages, nr))
		return 0;


More information about the linux-arm-kernel mailing list