mm: memory-failure: remove unneeded page state check in shake_page()
authorMiaohe Lin <linmiaohe@huawei.com>
Wed, 28 Jun 2023 01:49:29 +0000 (09:49 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 18 Aug 2023 17:12:06 +0000 (10:12 -0700)
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.

Link: https://lkml.kernel.org/r/20230628014929.3441386-1-linmiaohe@huawei.com
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/memory-failure.c

index ece5d481b5fff923aba2a710aeae1d8dd2539467..1ddb25a1073ea6b1856b932275958ad87629ba40 100644 (file)
@@ -363,17 +363,14 @@ 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;
-       }
-
        /*
         * TODO: Could shrink slab caches here if a lightweight range-based
         * shrinker will be available.
         */
+       if (PageSlab(p))
+               return;
+
+       lru_add_drain_all();
 }
 EXPORT_SYMBOL_GPL(shake_page);