Re: [PATCH] xen/x86: obtain upper 32 bits of video frame buffer address for Dom0

From: Jan Beulich
Date: Tue Jan 04 2022 - 11:55:07 EST


On 04.01.2022 17:50, Boris Ostrovsky wrote:
>
> On 1/4/22 3:46 AM, Jan Beulich wrote:
>> The hypervisor has been supplying this information for a couple of major
>> releases. Make use of it. The need to set a flag in the capabilities
>> field also points out that the prior setting of that field from the
>> hypervisor interface's gbl_caps one was wrong, so that code gets deleted
>> (there's also no equivalent of this in native boot code).
>>
>> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
>>
>> --- a/arch/x86/xen/vga.c
>> +++ b/arch/x86/xen/vga.c
>> @@ -63,13 +63,17 @@ void __init xen_init_vga(const struct do
>> }
>>
>> if (size >= offsetof(struct dom0_vga_console_info,
>> - u.vesa_lfb.gbl_caps)
>> - + sizeof(info->u.vesa_lfb.gbl_caps))
>> - screen_info->capabilities = info->u.vesa_lfb.gbl_caps;
>> - if (size >= offsetof(struct dom0_vga_console_info,
>> u.vesa_lfb.mode_attrs)
>> + sizeof(info->u.vesa_lfb.mode_attrs))
>
>
> Do we still need this test? All 4.0+ hypervisors will have mode_attrs.

Perhaps this could also be dropped, but unlike the capabilities part
I'd view this as an unrelated change. Furthermore even a new hypervisor
would be free to omit the field, provided it also sets size low enough.

Jan