Messages in this thread | | | Subject | Re: [PATCH v2 1/2] mm/damon: validate if the pmd entry is present before accessing | From | Muchun Song <> | Date | Thu, 18 Aug 2022 16:27:41 +0800 |
| |
> On Aug 18, 2022, at 15:37, Baolin Wang <baolin.wang@linux.alibaba.com> wrote: > > The pmd_huge() is used to validate if the pmd entry is mapped by a huge > page, also including the case of non-present (migration or hwpoisoned) > pmd entry on arm64 or x86 architectures. That means the pmd_pfn() can > not get the correct pfn number for the non-present pmd entry, which > will cause damon_get_page() to get an incorrect page struct (also > may be NULL by pfn_to_online_page()) to make the access statistics > incorrect. > > Moreover it does not make sense that we still waste time to get the > page of the non-present entry, just treat it as not-accessed and skip it, > that keeps consistent with non-present pte level entry. > > Thus adding a pmd entry present validation to fix above issues. > > Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com> > Reviewed-by: SeongJae Park <sj@kernel.org>
Reviewed-by: Muchun Song <songmuchun@bytedance.com>
Thanks.
| |