Re: [PATCH v2 12/16] mm/vmemmap optimization: Split hugetlb and devdax vmemmap optimization
From: Aneesh Kumar K V <hidden>
Date: 2023-06-28 03:02:01
Also in:
linux-mm
From: Aneesh Kumar K V <hidden>
Date: 2023-06-28 03:02:01
Also in:
linux-mm
On 6/28/23 6:39 AM, Ritesh Harjani (IBM) wrote:
"Aneesh Kumar K.V" [off-list ref] writes:quoted
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 <redacted> --- 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