Re: [RFC 2/2] khugepaged: use upgrade_read() to optimize collapse_huge_page

From: Matthew Wilcox
Date: Wed Oct 16 2024 - 07:53:29 EST


On Wed, Oct 16, 2024 at 12:36:00PM +0800, lizhe.67@xxxxxxxxxxxxx wrote:
> From: Li Zhe <lizhe.67@xxxxxxxxxxxxx>
>
> In function collapse_huge_page(), we drop mmap read lock and get
> mmap write lock to prevent most accesses to pagetables. There is
> a small time window to allow other tasks to acquire the mmap lock.
> With the use of upgrade_read(), we don't need to check vma and pmd
> again in most cases.

This is clearly a performance optimisation. So you must have some
numebrs that justify this, please include them.