Re: [PATCH v2 2/2] of: reserved_mem: allocate and map the reserved_mem array early

From: Marek Szyprowski

Date: Fri Oct 09 2026 - 07:31:43 EST


On 09.10.2026 04:16, Wandun wrote:
> On 10/8/26 23:24, Marek Szyprowski wrote:
>> Get rid of the static, limited-size reserved_mem array and replace it
>> with array allocated by memblock_alloc_raw() and accessed through a
>> temporary early_memremap() mapping. Such mapping is needed for some
>> architectures (like ARM64), where linear map is not yet available during
>> early boot scan. Having a single, writeable array with all reserved
>> regions removes the need to perform two step initialization introduced
>> by commit 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved
>> memory regions are processed"), so all regions can be processed
>> directly during the early scan again.
> One concern about the ordering here: the new memblock_alloc_raw() for the
> reserved_mem array runs *before* the static ("reg") regions are reserved,
> so the array can be allocated from inside one of them which makes the
> subsequent static region reservation fail.

Well, that's what Sashiko already reported. It will be trivial to process
'static' regions before doing the reserved_mem allocation, but this in turn
returns us to the point of not being able to handle their reservation
failures. I wonder what's worse...

Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland