Nikunj and I realized that migrating pseries-2.6 guest from QEMU-2.6
to newer QEMU-2.7 is broken like this:

qemu-system-ppc64: error while loading state for instance 0x0 of device 'cpu'
qemu-system-ppc64: load of migration failed: Invalid argument

Bisecting tells us that 4e0806110c8b896ceff3490f15a616e8b3165efe
(ppc: Add PPC_64H instruction flag to POWER7 and POWER8) is the
first bad commit.  Along with this there are other 3 similar commits
which add new bits to insns_flags and insns_flags2 fields of POWER7
and POWER8 CPUs.

4e0806110c8b896ceff3490f15a616e8b3165efe Adds PPC_64H to POWER7 and POWER8
dfdd3e43620a6cd4f2be31da5a257c84a16fc000 Adds PPC_64BX to POWER7
b781537560e3b968b6fe1395e3d07bd67f0009ba Adds PPC_CILDST to POWER7 and POWER8
7778a575c7055276afdd01737e9d1029a65f923d Adds PPC2_PM_ISA206 to POWER7 and 

The flag values are expected to remain same for a machine version for
the migration to succeed, but this expectation is broken now. Should
we make the addition of these flags conditional on machine type version ?
But these flags are part of POWER8 CPU definition which is common for
both pseries and upcoming powernv.


Reply via email to