Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752709AbcDRQFH (ORCPT ); Mon, 18 Apr 2016 12:05:07 -0400 Received: from mail-wm0-f47.google.com ([74.125.82.47]:35145 "EHLO mail-wm0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751946AbcDRQFF (ORCPT ); Mon, 18 Apr 2016 12:05:05 -0400 From: Ard Biesheuvel To: linux-kernel@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, lftan@altera.com, jonas@southpole.se Cc: will.deacon@arm.com, Ard Biesheuvel Subject: [PATCH resend 0/3] mm: allow arch to override lowmem_page_address Date: Mon, 18 Apr 2016 18:04:54 +0200 Message-Id: <1460995497-24312-1-git-send-email-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.5.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1537 Lines: 34 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 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