On Wed, Apr 05, 2017 at 08:00:22PM +0100, Dr. David Alan Gilbert (git) wrote: > From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> > > Long long ago, we used to support storing the x86 FP registers in > a 64bit format. > > Then c31da136a0bf8caad70c348f5ffc283206e9c7fc in v0.14-rc0 removed > the last support for writing that in the migration format. > Even before that, it was only used if you had softfloat disabled > (i.e. !USE_X86LDOUBLE) so in practice use of it in even earlier > qemu is unlikely for most users. > > Kill it off, it's complicated, and possibly broken. > > Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com>
I love the sound of obsolete code being deleted... Acked-by: Eduardo Habkost <ehabk...@redhat.com> But: [...] > @@ -356,6 +256,10 @@ static int cpu_post_load(void *opaque, int version_id) > return -EINVAL; > } > > + if (env->fpregs_format_vmstate) { > + error_report("Unsupported old non-softfloat CPU state"); > + return -EINVAL; > + } Is this equivalent to using VMSTATE_UINT16_EQUAL, but with a better and more verbose error message? > /* > * Real mode guest segments register DPL should be zero. > * Older KVM version were setting it wrongly. > @@ -943,7 +847,8 @@ VMStateDescription vmstate_x86_cpu = { > VMSTATE_UINT16(env.fpus_vmstate, X86CPU), > VMSTATE_UINT16(env.fptag_vmstate, X86CPU), > VMSTATE_UINT16(env.fpregs_format_vmstate, X86CPU), > - VMSTATE_FP_REGS(env.fpregs, X86CPU, 8), > + > + VMSTATE_STRUCT_ARRAY(env.fpregs, X86CPU, 8, 0, vmstate_fpreg, FPReg), > > VMSTATE_SEGMENT_ARRAY(env.segs, X86CPU, 6), > VMSTATE_SEGMENT(env.ldt, X86CPU), > -- > 2.9.3 > -- Eduardo