Messages in this thread | | | Date | Tue, 10 May 2022 23:59:41 +0800 | From | Muchun Song <> | Subject | Re: [PATCH 2/2] arm64/hugetlb: Implement arm64 specific huge_ptep_get() |
| |
On Tue, May 10, 2022 at 07:12:53PM +0800, Baolin Wang wrote: > Now we use huge_ptep_get() to get the pte value of a hugetlb page, > however it will only return one specific pte value for the CONT-PTE > or CONT-PMD size hugetlb on ARM64 system, which can contain seravel > continuous pte or pmd entries with same page table attributes. And it > will not take into account the subpages' dirty or young bits of a > CONT-PTE/PMD size hugetlb page. > > So the huge_ptep_get() is inconsistent with huge_ptep_get_and_clear(), > which already takes account the dirty or young bits for any subpages > in this CONT-PTE/PMD size hugetlb [1]. Meanwhile we can miss dirty or > young flags statistics for hugetlb pages with current huge_ptep_get(), > such as the gather_hugetlb_stats() function, and CONT-PTE/PMD hugetlb > monitoring with DAMON. > > Thus define an ARM64 specific huge_ptep_get() implementation, that will > take into account any subpages' dirty or young bits for CONT-PTE/PMD size > hugetlb page, for those functions that want to check the dirty and young > flags of a hugetlb page. > > [1] https://lore.kernel.org/linux-mm/85bd80b4-b4fd-0d3f-a2e5-149559f2f387@oracle.com/ > > Suggested-by: Muchun Song <songmuchun@bytedance.com> > Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>
LGTM. Thanks for your work.
Reviewed-by: Muchun Song <songmuchun@bytedance.com>
| |