mm/memory-failure.c: cleanup in unpoison_memory
authorMa Wupeng <mawupeng1@huawei.com>
Fri, 25 Nov 2022 06:54:44 +0000 (14:54 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 30 Nov 2022 23:59:08 +0000 (15:59 -0800)
If freeit is true, the value of ret must be zero, there is no need to
check the value of freeit after label unlock_mutex.

We can drop variable freeit to do this cleanup.

Link: https://lkml.kernel.org/r/20221125065444.3462681-1-mawupeng1@huawei.com
Signed-off-by: Ma Wupeng <mawupeng1@huawei.com>
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com>
Reviewed-by: Miaohe Lin <linmiaohe@huawei.com>
Cc: zhenwei pi <pizhenwei@bytedance.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/memory-failure.c

index 2e62940..c77a9e3 100644 (file)
@@ -2338,7 +2338,6 @@ int unpoison_memory(unsigned long pfn)
        struct page *page;
        struct page *p;
        int ret = -EBUSY;
-       int freeit = 0;
        unsigned long count = 1;
        bool huge = false;
        static DEFINE_RATELIMIT_STATE(unpoison_rs, DEFAULT_RATELIMIT_INTERVAL,
@@ -2413,10 +2412,9 @@ int unpoison_memory(unsigned long pfn)
                                goto unlock_mutex;
                        }
                }
-               freeit = !!TestClearPageHWPoison(p);
 
                put_page(page);
-               if (freeit) {
+               if (TestClearPageHWPoison(p)) {
                        put_page(page);
                        ret = 0;
                }
@@ -2424,7 +2422,7 @@ int unpoison_memory(unsigned long pfn)
 
 unlock_mutex:
        mutex_unlock(&mf_mutex);
-       if (!ret || freeit) {
+       if (!ret) {
                if (!huge)
                        num_poisoned_pages_sub(pfn, 1);
                unpoison_pr_info("Unpoison: Software-unpoisoned page %#lx\n",