Re: [Xen-devel] [PATCH 03/10] x86/cpuid: Handle leaf 0x1 in guest_cpuid()

2017-02-21 Thread Jan Beulich
>>> On 21.02.17 at 18:29, wrote: > On 21/02/17 17:20, Jan Beulich wrote: >> > The final 8 bits are the initial legacy APIC ID. For HVM guests, this was > overridden to vcpu_id * 2. The same logic is now applied to PV guests, so > guests don't observe a constant number on all vcpus vi

Re: [Xen-devel] [PATCH 03/10] x86/cpuid: Handle leaf 0x1 in guest_cpuid()

2017-02-21 Thread Andrew Cooper
On 21/02/17 17:20, Jan Beulich wrote: > The final 8 bits are the initial legacy APIC ID. For HVM guests, this was overridden to vcpu_id * 2. The same logic is now applied to PV guests, so guests don't observe a constant number on all vcpus via their emulated or faulted view. >

Re: [Xen-devel] [PATCH 03/10] x86/cpuid: Handle leaf 0x1 in guest_cpuid()

2017-02-21 Thread Jan Beulich
>>> On 21.02.17 at 18:13, wrote: > On 21/02/17 16:59, Jan Beulich wrote: > On 20.02.17 at 12:00, wrote: >>> The ebx word is more problematic. The low 8 bits are the brand ID and safe >>> to >>> pass straight through. The next 8 bits are the CLFLUSH line size. This >>> value >>> is forwar

Re: [Xen-devel] [PATCH 03/10] x86/cpuid: Handle leaf 0x1 in guest_cpuid()

2017-02-21 Thread Andrew Cooper
On 21/02/17 16:59, Jan Beulich wrote: On 20.02.17 at 12:00, wrote: >> The ebx word is more problematic. The low 8 bits are the brand ID and safe >> to >> pass straight through. The next 8 bits are the CLFLUSH line size. This >> value >> is forwarded straight from hardware, as nothing goo

Re: [Xen-devel] [PATCH 03/10] x86/cpuid: Handle leaf 0x1 in guest_cpuid()

2017-02-21 Thread Jan Beulich
>>> On 20.02.17 at 12:00, wrote: > The ebx word is more problematic. The low 8 bits are the brand ID and safe to > pass straight through. The next 8 bits are the CLFLUSH line size. This value > is forwarded straight from hardware, as nothing good can possibly come of > providing an alternative

[Xen-devel] [PATCH 03/10] x86/cpuid: Handle leaf 0x1 in guest_cpuid()

2017-02-20 Thread Andrew Cooper
The features words, ecx and edx, are already audited as part of the featureset logic. The existing leaf 0x8001 dynamic logic has its SYSCALL adjustment split out, as the rest of the adjustments are common with leaf 0x1. The existing leaf 0x1 feature adjustments from {pv,hvm}_cpuid() are moved