Re: [PATCH] mm: memory-failure: remove unneeded page state check in shake_page()

From: Naoya Horiguchi
Date: Sun Jun 25 2023 - 20:58:15 EST


On Sun, Jun 25, 2023 at 07:34:30PM +0800, Miaohe Lin wrote:
> Remove unneeded PageLRU(p) and is_free_buddy_page(p) check as slab caches
> are not shrunk now. This check can be added back when a lightweight range
> based shrinker is available.
>
> Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx>

This looks to me a good cleanup because the result of
"if (PageLRU(p) || is_free_buddy_page(p))" check is not used, so the check
itself is unneeded.

> ---
> mm/memory-failure.c | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/mm/memory-failure.c b/mm/memory-failure.c
> index 5b663eca1f29..92f951df3e87 100644
> --- a/mm/memory-failure.c
> +++ b/mm/memory-failure.c
> @@ -373,11 +373,10 @@ void shake_page(struct page *p)
> if (PageHuge(p))
> return;
>
> - if (!PageSlab(p)) {
> - lru_add_drain_all();
> - if (PageLRU(p) || is_free_buddy_page(p))
> - return;
> - }
> + if (PageSlab(p))
> + return;
> +
> + lru_add_drain_all();
>
> /*
> * TODO: Could shrink slab caches here if a lightweight range-based

I think that this TODO comment can be put together with "if (PageSlab)" block.

Thanks,
Naoya Horiguchi