Re: [PATCH v4 6/6] memblock: Disable mirror feature if kernelcore is not specified

From: Kefeng Wang
Date: Mon Jun 13 2022 - 10:52:28 EST

On 2022/6/13 19:25, Ard Biesheuvel wrote:
On Mon, 13 Jun 2022 at 13:05, Mike Rapoport <rppt@xxxxxxxxxx> wrote:
On Mon, Jun 13, 2022 at 04:21:47PM +0800, Wupeng Ma wrote:
From: Ma Wupeng <mawupeng1@xxxxxxxxxx>

If system have some mirrored memory and mirrored feature is not specified
in boot parameter, the basic mirrored feature will be enabled and this will
lead to the following situations:

- memblock memory allocation prefers mirrored region. This may have some
unexpected influence on numa affinity.

- contiguous memory will be split into several parts if parts of them
is mirrored memory via memblock_mark_mirror().
Also, on second thought, I don't think marking as mirror is what
should be affected by the policy. Instead, choose_memblock_flags()
should take this into account, in a way that we could refine later if

The choose_memblock_flags() only solve the issue of memblock allocation, but

the memblock could be splitted and fragmentized, the kernel won't treat the

mirror memory as special if no mirrored_kernelcore for now, so I think we'd better

to add the check into memblock_mark_mirror().