efi: disable mirror feature during crashkernel

JIRA: https://issues.redhat.com/browse/RHEL-27745

This patch is a backport of the following upstream commit:
commit 7ea6ec4c25294e8bc8788148ef854df92ee8dc5e
Author: Ma Wupeng <mawupeng1@huawei.com>
Date:   Tue Jan 9 12:15:36 2024 +0800

    efi: disable mirror feature during crashkernel

    If the system has no mirrored memory or uses crashkernel.high while
    kernelcore=mirror is enabled on the command line then during crashkernel,
    there will be limited mirrored memory and this usually leads to OOM.

    To solve this problem, disable the mirror feature during crashkernel.

    Link: https://lkml.kernel.org/r/20240109041536.3903042-1-mawupeng1@huawei.com
    Signed-off-by: Ma Wupeng <mawupeng1@huawei.com>
    Acked-by: Mike Rapoport (IBM) <rppt@kernel.org>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Signed-off-by: Rafael Aquini <raquini@redhat.com>
This commit is contained in:
Rafael Aquini 2024-12-09 12:18:09 -05:00
parent c8c9c0b259
commit cfad6829e6
1 changed files with 6 additions and 0 deletions

View File

@ -26,6 +26,7 @@
#include <linux/pgtable.h>
#include <linux/swap.h>
#include <linux/cma.h>
#include <linux/crash_dump.h>
#include "internal.h"
#include "slab.h"
#include "shuffle.h"
@ -381,6 +382,11 @@ static void __init find_zone_movable_pfns_for_nodes(void)
goto out;
}
if (is_kdump_kernel()) {
pr_warn("The system is under kdump, ignore kernelcore=mirror.\n");
goto out;
}
for_each_mem_region(r) {
if (memblock_is_mirror(r))
continue;