Re: [PATCH v2 03/13] mm: Add generic p?d_large() macros
From: Steven Price <steven.price@arm.com>
Date: 2019-02-21 14:46:28
Also in:
linux-mm, lkml
On 21/02/2019 14:28, Kirill A. Shutemov wrote:
On Thu, Feb 21, 2019 at 11:34:52AM +0000, Steven Price wrote:quoted
From: James Morse <james.morse@arm.com> Exposing the pud/pgd levels of the page tables to walk_page_range() means we may come across the exotic large mappings that come with large areas of contiguous memory (such as the kernel's linear map). For architectures that don't provide p?d_large() macros, provided a does nothing default.Nak, sorry. Power will get broken by the patch. It has pmd_large() inline function, that will be overwritten by the define from this patch. I believe it requires more ground work on arch side in general. All architectures that has huge page support has to provide these helpers (and matching defines) before you can use it in a generic code.
Sorry about that, I had compile tested on power, but obviously not the right config to actually see the breakage. I'll do some grepping - hopefully this is just a case of exposing the functions/defines that already exist for those architectures. Note that in terms of the new page walking code, these new defines are only used when walking a page table without a VMA (which isn't currently done), so architectures which don't use p?d_large currently will work fine with the generic versions. They only need to provide meaningful definitions when switching to use the walk-without-a-VMA functionality. Thanks for reporting the breakage. Steve _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel