Hi Michal,
On 14/11/2024 11:48, Michal Orzel wrote:
On 14/11/2024 11:31, Julien Grall wrote:
Looking at the code, I think /memreserve/ and /reserved-memory are not
mapped in Xen and everything in /reserved-memory is mapped to dom0.
Why do we forward /reserved-memory to dom0 fdt but /memreserve/ not?
I was wondering the same. The main issue I can think of with
/memreserve/ is some of the regions will likely be for Xen own usage. So
we would need to have a way to exclude them from dom0.
> From the discussion> we're having it seems like we should treat them
equally. Also, looking at Luca patch,
we seem to special case /memreserve/ and only allow for overlap /memresrve/
with boot modules
and not /reserved-memory/ with boot modules. If we are going to claim that all
the boot modules
can be marked as reserved by the bootloader, then I think we should treat them
equally providing
the same experience to dom0.
In my mind, /memreserved/ and /reserved-memory/ are different. The
former doesn't say what the region is for, but the latter will indicate it.
So I am not 100% sure how the bootmodule could end up in
/reserved-memory/ because they are described as part of the multiboot
modules. Do you have a scenario?
Regardless that, if we decide to allow boot modules in /reserved-memory/
then we would need need to rework how the reserved-regions are mapped
because we don't want the boot modules to be exposed to dom0.
Last thing I wanted to ask (for my clarity) is that if bootloader loads initrd
at region A and marks
it as reserved (either in /memreserve/ or /reserved-memory/), and later on Xen
copies initrd from region
A to B, shouldn't the reserved memory region be updated to cover new region for
initrd?
If we mark the region has a reserved, then we are telling the OS it
can't use the region. But I am not sure why it would be needed as Xen
doesn't care how the regions is going to be used by the domain. From a
domain side, do you see any reason why we would want to mark again the
region as reserved?
If we didn't copy the initrd, then I would have directly agreed that
they should be marked as /memreserve/.
Cheers,
--
Julien Grall