All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH for-4.8] libxc/x86: Report consistent initial APIC value for PV guests
@ 2016-11-10 14:50 Boris Ostrovsky
  2016-11-10 14:55 ` Andrew Cooper
  2016-11-11 15:16 ` Wei Liu
  0 siblings, 2 replies; 12+ messages in thread
From: Boris Ostrovsky @ 2016-11-10 14:50 UTC (permalink / raw)
  To: xen-devel; +Cc: ian.jackson, Boris Ostrovsky, wei.liu2, andrew.cooper3

Currently hypervisor provides PV guest's CPUID(1).EBX[31:24] (initial
APIC ID) with contents of that field on the processor that launched
the guest. This results in the guest reporting different initial
APIC IDs across runs.

We should be consistent in how this value is reported, let's set
it to 0 (which is also what Linux guests expect).

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
---

I think this should go to stable branches as well. This has been causing
problems lately in Linux with introduction of topology maps.


 tools/libxc/xc_cpuid_x86.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tools/libxc/xc_cpuid_x86.c b/tools/libxc/xc_cpuid_x86.c
index d761805..1f26294 100644
--- a/tools/libxc/xc_cpuid_x86.c
+++ b/tools/libxc/xc_cpuid_x86.c
@@ -618,6 +618,12 @@ static void xc_cpuid_pv_policy(xc_interface *xch,
         /* Host topology exposed to PV guest.  Provide host value. */
         bool host_htt = regs[3] & bitmaskof(X86_FEATURE_HTT);
 
+        /*
+         * Don't pick host's Initial APIC ID which can change from run
+         * to run. 
+         */
+        regs[1] &= 0x00ffffffu;
+
         regs[2] = info->featureset[featureword_of(X86_FEATURE_SSE3)];
         regs[3] = (info->featureset[featureword_of(X86_FEATURE_FPU)] &
                    ~bitmaskof(X86_FEATURE_HTT));
-- 
2.7.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-11-12  6:46 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-10 14:50 [PATCH for-4.8] libxc/x86: Report consistent initial APIC value for PV guests Boris Ostrovsky
2016-11-10 14:55 ` Andrew Cooper
2016-11-10 15:05   ` Boris Ostrovsky
2016-11-10 15:08     ` Andrew Cooper
2016-11-10 15:24       ` Boris Ostrovsky
2016-11-10 16:12   ` Jan Beulich
2016-11-10 16:24     ` Boris Ostrovsky
2016-11-10 16:24       ` Andrew Cooper
2016-11-11 15:16 ` Wei Liu
2016-11-11 15:32   ` Jan Beulich
2016-11-11 15:33     ` Andrew Cooper
2016-11-12  6:46       ` Wei Liu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.