|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] xen/dt: Don't advertise Xen static-heap region to hwdom
On Thu, Oct 29, 2026 at 11:43:05AM +0100, Michal Orzel wrote:
> bootinfo.reserved_mem is used to store different types of memory that
> Xen considers as reserved: domU static mem, normal /reserved-memory,
> FDT memreserve and Xen static heap. make_memory_node(), invoked during
> FDT generation for a hwdom for reserved memory, only skips the domU
> static memory and FDT memreserve. This results in advertising Xen static
> heap (if used) to a hwdom as /memory. This memory is not mapped in P2M
> and guest attempt to access it fails. Interestingly, if the
> /reserved-memory node is placed after /chosen, there is no problem because
> of the check at the beginning of make_memory_node() that finds the first
> memory range using the correct type.
>
> Fixes: 4596329291f5 ("docs, xen/arm: Introduce static heap memory")
> Signed-off-by: Michal Orzel <michal.orzel@xxxxxxx>
Reviewed-by: Kuan-Wei Chiu <visitorckw@xxxxxxxxx>
I guess git will treat this as conflicting with my dt patch when
applying. Let me know if this gets merged first and you would like me
to rebase and resend.
Regards,
Kuan-Wei
> ---
> xen/common/device-tree/domain-build.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/xen/common/device-tree/domain-build.c
> b/xen/common/device-tree/domain-build.c
> index 30a59abfa722..634a26946c24 100644
> --- a/xen/common/device-tree/domain-build.c
> +++ b/xen/common/device-tree/domain-build.c
> @@ -541,8 +541,7 @@ int __init make_memory_node(const struct kernel_info
> *kinfo, int addrcells,
> u64 start = mem->bank[i].start;
> u64 size = mem->bank[i].size;
>
> - if ( (mem->bank[i].type == MEMBANK_STATIC_DOMAIN) ||
> - (mem->bank[i].type == MEMBANK_FDT_RESVMEM) )
> + if ( mem->bank[i].type != MEMBANK_DEFAULT )
> continue;
>
> nr_cells += reg_size;
> --
> 2.43.0
>
>
>
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |