kexec: delete a useless check in crash_shrink_memory()
authorZhen Lei <thunder.leizhen@huawei.com>
Sat, 27 May 2023 12:34:35 +0000 (20:34 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Sat, 10 Jun 2023 00:44:23 +0000 (17:44 -0700)
The check '(crashk_res.parent != NULL)' is added by commit e05bd3367bd3
("kexec: fix Oops in crash_shrink_memory()"), but it's stale now.  Because
if 'crashk_res' is not reserved, it will be zero in size and will be
intercepted by the above 'if (new_size >= old_size)'.

Ago:
if (new_size >= end - start + 1)

Now:
old_size = (end == 0) ? 0 : end - start + 1;
if (new_size >= old_size)

Link: https://lkml.kernel.org/r/20230527123439.772-3-thunder.leizhen@huawei.com
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
Cc: Baoquan He <bhe@redhat.com>
Cc: Cong Wang <amwang@redhat.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
kernel/kexec_core.c

index 22acee1..d1ab139 100644 (file)
@@ -1137,7 +1137,7 @@ int crash_shrink_memory(unsigned long new_size)
        end = start + new_size;
        crash_free_reserved_phys_range(end, crashk_res.end);
 
-       if ((start == end) && (crashk_res.parent != NULL))
+       if (start == end)
                release_resource(&crashk_res);
 
        ram_res->start = end;