Re: [PATCH v2] mm:vmscan: shrink skip folio mapped by an exiting task

From: Andrew Morton
Date: Fri Feb 02 2024 - 04:26:14 EST


On Wed, 31 Jan 2024 21:12:44 +0800 Zhiguo Jiang <justinjiang@xxxxxxxx> wrote:

> --- a/mm/rmap.c
> +++ b/mm/rmap.c
> @@ -840,6 +840,13 @@ static bool folio_referenced_one(struct folio *folio,
> int referenced = 0;
> unsigned long start = address, ptes = 0;
>
> + /* Skip this folio if it's mapped by an exiting task */
> + if (unlikely(!atomic_read(&vma->vm_mm->mm_users)) ||
> + unlikely(test_bit(MMF_OOM_SKIP, &vma->vm_mm->flags))) {
> + pra->referenced = -1;
> + return false;
> + }

The code comment explains what the code does. This is, as usual,
pretty obvious from reading the code!

A better comment is one which explains *why* the code is doing what it
does.