Re: [PATCH v2 2/6] mm: handle swap page faults under VMA lock if page is uncontended

From: Matthew Wilcox
Date: Fri Jun 09 2023 - 16:36:40 EST


On Fri, Jun 09, 2023 at 04:25:42PM -0400, Peter Xu wrote:
> > bool __folio_lock_or_retry(struct folio *folio, struct mm_struct *mm,
> > unsigned int flags)
> > {
> > + /* Can't do this if not holding mmap_lock */
> > + if (flags & FAULT_FLAG_VMA_LOCK)
> > + return false;
>
> If here what we need is the page lock, can we just conditionally release
> either mmap lock or vma lock depending on FAULT_FLAG_VMA_LOCK?

See patch 5 ...