[PATCH v2 12/16] mm/vmemmap optimization: Split hugetlb and devdax vmemmap optimization
Aneesh Kumar K V
aneesh.kumar at linux.ibm.com
Wed Jun 28 13:01:15 AEST 2023
On 6/28/23 6:39 AM, Ritesh Harjani (IBM) wrote:
> "Aneesh Kumar K.V" <aneesh.kumar at linux.ibm.com> writes:
>
>> Arm disabled hugetlb vmemmap optimization [1] because hugetlb vmemmap
>> optimization includes an update of both the permissions (writeable to
>> read-only) and the output address (pfn) of the vmemmap ptes. That is not
>> supported without unmapping of pte(marking it invalid) by some
>> architectures.
>>
>> With DAX vmemmap optimization we don't require such pte updates and
>> architectures can enable DAX vmemmap optimization while having hugetlb
>> vmemmap optimization disabled. Hence split DAX optimization support into a
>> different config.
>>
>> loongarch and riscv don't have devdax support. So the DAX config is not
>> enabled for them. With this change, arm64 should be able to select DAX
>> optimization
>>
>> [1] commit 060a2c92d1b6 ("arm64: mm: hugetlb: Disable HUGETLB_PAGE_OPTIMIZE_VMEMMAP")
>>
>> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.ibm.com>
>> ---
>> arch/loongarch/Kconfig | 2 +-
>> arch/riscv/Kconfig | 2 +-
>> arch/x86/Kconfig | 3 ++-
>> fs/Kconfig | 2 +-
>> include/linux/mm.h | 2 +-
>> mm/Kconfig | 5 ++++-
>> 6 files changed, 10 insertions(+), 6 deletions(-)
>
> what about s390?
>
> git grep "ARCH_WANT_OPTIMIZE_VMEMMAP" .
> arch/s390/Kconfig: select ARCH_WANT_OPTIMIZE_VMEMMAP
>
Thanks for catching that. Updated
-aneesh
More information about the Linuxppc-dev
mailing list