On Mon, Apr 30, 2018 at 02:48:34PM -0700, Jim Mattson wrote: > On Mon, Apr 30, 2018 at 2:14 PM, Konrad Rzeszutek Wilk > <konrad.wilk@xxxxxxxxxx> wrote: > > On Fri, Apr 27, 2018 at 11:14:35AM -0700, Jim Mattson wrote: > >> Changing the VMCS12 layout breaks save/restore compatibility with > >> older kvm releases. > >> > >> Google has been saving/restoring nested VMX state based on the v4.0 > >> layout. There are no other known users of the > >> KVM_{GET,SET}_NESTED_STATE ioctls, since those ioctls have not yet > >> been accepted upstream. > > > > What is the advantage of that layout vs the one that is now? I vaguelly > > recall something about it being quite bloated and the newer more sparse? > > The only differences between the v4.0 layout and today's layout is > that four new fields have been intermingled in such a way that the old > offsets have not been preserved. I'm suggesting that these four fields > be moved so as to preserve the offsets of all of the pre-existing > fields. Could you roll that explanation in the commit please? Especially as the 'save/restore compatibility' is not exactly correct - as the old upstream kvm releases at all don't work with this ...