On 11.02.2026 18:41, Alejandro Vallejo wrote:
> On Wed Feb 11, 2026 at 4:41 PM CET, Jan Beulich wrote:
>> On 06.02.2026 17:15, Alejandro Vallejo wrote:
>>> --- a/xen/lib/x86/policy.c
>>> +++ b/xen/lib/x86/policy.c
>>> @@ -15,7 +15,8 @@ int x86_cpu_policies_are_compatible(const struct
>>> cpu_policy *host,
>>> #define FAIL_MSR(m) \
>>> do { e.msr = (m); goto out; } while ( 0 )
>>>
>>> - if ( guest->basic.max_leaf > host->basic.max_leaf )
>>> + if ( (guest->x86_vendor != host->x86_vendor) ||
>>
>> With the subsequent "unknown" discussion also in mind, I wonder: Should we
>> fail the request here when either side is "unknown"?
>
> That'd preclude the creation of VMs on new vendors. At that point, might as
> well drop support for unknown vendors altogether. I wouldn't mind that.
>
> I was thinking of comparing the x86_vendor_id bytes instead, as I answered
> to Roger. Then the invariant that only $VENDOR VMs run on $VENDOR hosts is
> preserved even if we don't know about them.
This would be okay with me.
I wonder though if we aren't getting too restrictive here at the same
time (even with the above check): Hygon (Fam18) can likely run AMD Fam17
guests quite fine, for example. I wonder what Andrew's considerations
here are.
Jan