[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/hvm: always expose x2APIC feature in max HVM cpuid policy
On Tue, Dec 24, 2019 at 07:17:52PM +0100, Roger Pau Monné wrote: > On Tue, Dec 24, 2019 at 04:00:27PM +0000, Andrew Cooper wrote: > > On 24/12/2019 12:42, Roger Pau Monné wrote: > > > On Tue, Dec 24, 2019 at 12:23:12PM +0000, Andrew Cooper wrote: > > >> On 24/12/2019 10:18, Roger Pau Monne wrote: > > >>> On hardware without x2APIC support Xen emulated local APIC will > > >>> provide such mode, and hence the feature should be set in the maximum > > >>> HVM cpuid policy. > > >>> > > >>> Not exposing it in the maximum policy results in HVM domains not > > >>> getting such feature exposed unless it's also supported by the > > >>> underlying hardware. > > >>> > > >>> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> > > >> x2apic has never been exposed via this mechanism, due to its effects on > > >> topology calculations. > > > Well, it's exposed in hvm_max_cpuid_policy if it's present in the > > > hardware. IMO it's kind of weird that the presence of the x2APIC feature > > > on the max policy depends on the underlying hardware, when it's always > > > supported by the emulated vlapic. > > > > > > I think x2APIC must either always be part of the max policy, or never, > > > or else it's very easy to cause regressions because it's not so easy > > > to find a box without x2APIC. > > > > Hmm - this does highlight the inconsistency in the existing logic. I'm > > not overly surprised - this is a remnant of the old model which hasn't > > been rewritten yet. > > I could do something like: > > diff --git a/tools/libxc/xc_cpuid_x86.c b/tools/libxc/xc_cpuid_x86.c > index 519d6d8bd0..a7adc41854 100644 > --- a/tools/libxc/xc_cpuid_x86.c > +++ b/tools/libxc/xc_cpuid_x86.c > @@ -641,6 +641,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t > domid, > p->extd.itsc = true; > p->basic.vmx = true; > p->extd.svm = true; > + p->basic.x2apic = true; > } > > rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves); > > But it seems kind of bogus to me that such feature is not part of the > hvm_max_cpuid_policy, at the end of day the toolstack has no knowledge > of whether the hypervisor provides a x2APIC interface or not (apart > from us hardcoding it in the tools like the above patch). Ping? I don't think we reached a conclusion as to whether x2APIC should be forced from the toolstack side or part of the HVM max policy. Thanks, Roger. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |