[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <8b4fc8cc-23c0-8629-1225-eefcbab1f039@linux.alibaba.com>
Date: Sun, 21 Aug 2022 13:54:37 +0800
From: Baolin Wang <baolin.wang@...ux.alibaba.com>
To: Mike Kravetz <mike.kravetz@...cle.com>
Cc: akpm@...ux-foundation.org, songmuchun@...edance.com,
linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/3] Fix some issues when looking up hugetlb page
On 8/20/2022 8:08 AM, Mike Kravetz wrote:
> On 08/19/22 18:12, Baolin Wang wrote:
>> Hi,
>>
>> On ARM64 architecture, it can support CONT-PTE/PMD size hugetlb. When
>> looking up hugetlb page by follow_page(), we will hold the incorrect
>> pte/pmd lock for the CONT-PTE/PMD size hugetlb page, which will make
>> the pte/pmd entry unstable even under the lock and cause some potential
>> race issues. So considering the CONT-PTE/PMD size hugetlb, this patch set
>> changes to use the correct function to get the correct pte/pmd entry lock
>> to make the pte/pmd entry stable.
>
> Thank you for looking at this.
>
> I often get confused by arm64 CONT-PTE/PMD layout, so my understanding may be
> wrong. Can we use the PMD page lock for locking both CONT-PTE and CONT-PMD
> entries? Again, I may be confused by the CONT-* page table layout, but it
> seems these would all be referenced via that same PMD page of the page table.
> Or, perhaps CONT-PMD can span multiple PMD pages?
Good point. CONT-PMD can not span multiple PMD pages, so I think
CONT-PMD can use PMD pagetable page lock, but CONT-PTE also can not span
multiple PTE pagetable page lock, so I think CONT-PTE can use the PTE
pagetable page lock to get a fine grained lock.
I will add CONT-PTE and CONT-PMD case in huge_pte_lockptr() in next
version. Thanks for your comment.
> If we can use PMD page for locking, this would be much finer grain that
> lock in the mm.
Powered by blists - more mailing lists