Commit e0ff4280 authored by Ma Wupeng's avatar Ma Wupeng Committed by Andrew Morton
Browse files

mm/memory-failure.c: cleanup in unpoison_memory

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: default avatarMa Wupeng <mawupeng1@huawei.com>
Acked-by: default avatarNaoya Horiguchi <naoya.horiguchi@nec.com>
Reviewed-by: default avatarMiaohe Lin <linmiaohe@huawei.com>
Cc: zhenwei pi <pizhenwei@bytedance.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent e833bc50
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -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",