Re: [PATCH resend 0/3] mm: allow arch to override lowmem_page_address

From: Ard Biesheuvel
Date: Mon Apr 18 2016 - 12:07:54 EST


On 18 April 2016 at 18:04, Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> wrote:
> These patches allow the arch to define the page_to_virt() conversion that
> is used in lowmem_page_address(). This is desirable for arm64, where this
> conversion is trivial when CONFIG_SPARSEMEM_VMEMMAP is enabled, while
> breaking it up into __va(PFN_PHYS(page_to_pfn(page))), as is done currently
> in lowmem_page_address(), will force the use of a virt-to-phys() conversion
> and back again, which always involves a memory access on arm64, since the
> start of physical memory is not a compile time constant.
>
> I have split off these patches from my series 'arm64: optimize virt_to_page
> and page_address' which I sent out 3 weeks ago, and resending them in the
> hope that they can be picked up (with Will's ack on #3) to be merged via
> the mm tree.
>
> I have cc'ed the nios2 and openrisc maintainers on previous versions, and
> cc'ing them again now. I have dropped both of the arch specific mailing
> lists, since one is defunct and the other is subscriber only.
>
> Andrew, is this something you would be pulling to pick up (assuming that you

s/pulling/willing/

> agree with the contents)? Thanks.
>
> Ard Biesheuvel (3):
> nios2: use correct void* return type for page_to_virt()
> openrisc: drop wrongly typed definition of page_to_virt()
> mm: replace open coded page to virt conversion with page_to_virt()
>
> arch/nios2/include/asm/io.h | 1 -
> arch/nios2/include/asm/page.h | 2 +-
> arch/nios2/include/asm/pgtable.h | 2 +-
> arch/openrisc/include/asm/page.h | 2 --
> include/linux/mm.h | 6 +++++-
> 5 files changed, 7 insertions(+), 6 deletions(-)
>
> --
> 2.5.0
>