Hello,

It makes the class hierarchy much cleaner and removes duplicated
code. As we are touching the location of the objects states, migration
compatibility was checked and the following tests were performed under
KVM :

  qemu-3.0 (pseries-3.0)   -> qemu-3.0  (pseries-3.0)   OK
  qemu-3.0 (pseries-2.12)  -> qemu-2.12 (pseries-2.12)  OK
  qemu-3.0 (pseries-2.11)  -> qemu-2.11 (pseries-2.11)  OK
  qemu-3.0 (pseries-2.10)  -> qemu-2.10 (pseries-2.10)  OK
  qemu-3.0 (pseries-2.9)   -> qemu-2.9  (pseries-2.9)   OK
  qemu-3.0 (pseries-2.8)   -> qemu-2.8  (pseries-2.8)   OK
  qemu-3.0 (pseries-2.7)   -> qemu-2.7  (pseries-2.7)   FAIL

and back :

  qemu-3.0 (pseries-3.0)  <-  qemu-3.0  (pseries-3.0)   OK
  qemu-3.0 (pseries-2.12) <-  qemu-2.12 (pseries-2.12)  OK
  qemu-3.0 (pseries-2.11) <-  qemu-2.11 (pseries-2.11)  OK
  qemu-3.0 (pseries-2.10) <-  qemu-2.10 (pseries-2.10)  OK
  qemu-3.0 (pseries-2.9)  <-  qemu-2.9  (pseries-2.9)   OK
  qemu-3.0 (pseries-2.8)  <-  qemu-2.8  (pseries-2.8)   OK
  qemu-3.0 (pseries-2.7)  <-  qemu-2.7  (pseries-2.7)   OK

under TCG, same scenarios were run but up to 2.10 only, in which case
the migration fails for other reasons.

I wouldn't mind some extra cross checking from someone else.

Thanks,

C.

Changes since v2:

 - split the patch in smaller units. The migration tests were not
   rerun because the code is very much the same. make check was run on
   each patch.


Cédric Le Goater (5):
  ppc/xics: introduce a parent_realize in ICSStateClass
  ppc/xics: move the instance_init handler under the ics-base class
  ppx/xics: introduce a parent_reset in ICSStateClass
  ppc/xics: move the vmstate structures under the ics-base class
  ppc/xics: rework the ICS classes inheritance tree

 include/hw/ppc/xics.h |   4 +-
 hw/intc/xics.c        | 164 ++++++++++++++++++++++++++++----------------------
 hw/intc/xics_kvm.c    |  46 +++++++-------
 hw/ppc/spapr.c        |   2 +-
 4 files changed, 121 insertions(+), 95 deletions(-)

-- 
2.13.6


Reply via email to