[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 6/6] x86/HVM: report the set of enabled emulated devices through CPUID
>>> On 21.01.16 at 17:51, <roger.pau@xxxxxxxxxx> wrote: > Add a new HVM-specific feature flag that signals the presence of a bitmap > that contains the current set of enabled emulated devices. The bitmap is > placed in the ecx register. The bit fields used in the bitmap are the same > as the ones used in the xen_arch_domainconfig emulation_flags field, and > their meaning can be found at arch-x86/xen.h. > > This will allow Xen to enable emulated devices for HVMlite guests in the > future, by having a proper ABI for reporting which devices are enabled. The idea is certainly nice and appreciated, but ... > --- a/xen/include/public/arch-x86/cpuid.h > +++ b/xen/include/public/arch-x86/cpuid.h > @@ -78,12 +78,17 @@ > * HVM-specific features > * EAX: Features > * EBX: vcpu id (iff EAX has XEN_HVM_CPUID_VCPU_ID_PRESENT flag) > + * ECX: bitmap of enabled devices, according to the bit fields defined in > + * arch-x86/xen.h. ... this set of definitions is not currently a stable ABI (limited to hypervisor and tool stack), and if we wanted to make it stable we'd first need to think a little about the complications that may arise if the granularity chosen (think about the PM bit and the discussion around it before your changes went in) turns out to be a problem later on. Also at least some of the features can be determined by other means (CPUID, ACPI tables), so I'm not even sure we need all of this, and I'd really prefer to avoid multiple distinct ways to learn of a certain feature, as it's too easy for the two (or more) mechanisms to get out of sync. > All unused bits have undefined values. Nor is this an option, but maybe this is just a wording issue: Perhaps you mean to say that they're reserved for future use? Since truly unused bits have are guaranteed to have the value zero, just that the set of bits varies. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |