xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* (Reluctant) request to revert several changes, due to regressing VM migration
@ 2014-06-04 15:45 Andrew Cooper
  2014-06-04 16:00 ` Jan Beulich
  0 siblings, 1 reply; 6+ messages in thread
From: Andrew Cooper @ 2014-06-04 15:45 UTC (permalink / raw)
  To: Jan Beulich, Wu, Feng; +Cc: Xen-devel List

Changeset 31ee951a3 "x86/HVM: correct the SMEP logic for
HVM_CR0_GUEST_RESERVED_BITS" breaks migration for VMs using SMEP.

For migration, the architectural state is restored before the cpuid
policy is written.  This appears to be the behaviour in libxl, and is
certainly the behaviour in Xapi.

As a result, a VM using SMEP will fail the CR4 check in
hvm_load_cpu_ctxt().  This is easy to observe by performing a localhost
migration of a modern HVM Linux VM which enables SMEP.

Changeset 58658992 performs an equivalent action for SMAP, and as such
will be equivalently broken on supporting hardware.


Specifically, c/s f952f9c7f0e which is the backport of 31ee951a3 into
staging-4.4 is the problematic change which is causing regressions in
XenServer testing.


This is a reluctant request as pragmatically the changeset is correct.

However, there is a chicken & egg problem for libxc trying to calculate
the cpuid policy, which requires bits from the "magic chunks" in the
migration stream to be loaded first.  Therefore, simply moving the cpuid
policy calculation earlier will result in different problems.

~Andrew

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

end of thread, other threads:[~2014-06-06  1:20 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-04 15:45 (Reluctant) request to revert several changes, due to regressing VM migration Andrew Cooper
2014-06-04 16:00 ` Jan Beulich
2014-06-04 16:08   ` Andrew Cooper
2014-06-05 11:58     ` [PATCH] x86/HVM: refine SMEP/SMAP tests in HVM_CR4_GUEST_RESERVED_BITS() Jan Beulich
2014-06-05 13:07       ` David Vrabel
2014-06-06  1:20       ` Wu, Feng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).