On 31/08/2021 14:19, Jan Beulich wrote:
>>>> @@ -1095,6 +1101,17 @@ static int __init pvh_setup_acpi(struct
>>>> nr_pages = PFN_UP((d->arch.e820[i].addr & ~PAGE_MASK) +
>>>> d->arch.e820[i].size);
>>>>
>>>> + /* Memory below 1MB has been dealt with by pvh_populate_p2m(). */
>>>> + if ( pfn < PFN_DOWN(MB(1)) )
>>>> + {
>>>> + if ( pfn + nr_pages <= PFN_DOWN(MB(1)) )
>>>> + continue;
>>>> +
>>>> + /* This shouldn't happen, but is easy to deal with. */
>>> I'm not sure this comment is helpful.
>>>
>>> Under PVH, there is nothing special about the 1M boundary, and we can
>>> reasonably have something else here or crossing the boundary.
>> As long as we have this special treatment of the low Mb, the boundary
>> is meaningful imo. I'd see the comment go away when the handling in
>> general gets streamlined.
> I should have added: And as long as Dom0's E820 map gets cloned from
> the host's, which will necessarily consider the 1Mb boundary special.
Not when you're booting virtualised in the first place.
~Andrew