Re: Can't boot as Xen dom0 due to commit fe055896

From: Juergen Gross
Date: Fri Dec 16 2016 - 05:00:42 EST


On 16/12/16 10:43, Borislav Petkov wrote:
> On Fri, Dec 16, 2016 at 10:20:42AM +0100, Juergen Gross wrote:
>> Without testing, but I doubt it is working. As pv guests aren't coming
>> through check_loader_disabled_bsp() at all I can't see why your patch
>> would work for dom0.
>
> Do they go through check_loader_disabled_ap() ?

Yes.

>
>> Additionally I don't think you want to call native_cpuid() if
>> have_cpuid_p() returns false.
>
> Good point, fixed.
>
>> So I think you want a generic "platform_allows_ucode_load()"
>> function checking for support of cpuid and virtualization. This
>> function should be called both in check_loader_disabled_bsp() and
>> check_loader_disabled_ap() to bail out early.
>
> See question above. If they go through check_loader_disabled_ap(),
> then I'm inclined to set dis_ucode_ldr to true at build time and let
> check_loader_disabled_bsp() set it to false on baremetal or if any of
> the other checks pass.
>
> If the pv guests run into check_loader_disabled_ap, then they'll see
> dis_ucode_ldr true and return.
>
> Ok?

Should work. I'm happy to test any patch. :-)


Juergen