Amit Shah <amit.s...@redhat.com> wrote: > This script compares the vmstate dumps in JSON format as output by QEMU > with the -dump-vmstate option. > > It flags various errors, like version mismatch, sections going away, > size mismatches, etc. > > This script is tolerant of a few changes that do not change the on-wire > format, like embedding a few fields within substructs. > > The script takes -s/--src and -d/--dest parameters, to which filenames > are given as arguments. > > Signed-off-by: Amit Shah <amit.s...@redhat.com>
> +def check_fields_match(s_field, d_field): > + if s_field == d_field: > + return True > + > + # Some fields changed names between qemu versions. This list > + # is used to whitelist such changes. > + changed_names = [ > + ['d', 'dev', 'pcidev', 'pci_dev', 'parent_obj'], > + ['card', 'parent_obj'], > + ['bridge.dev', 'parent_obj'], > + ['br.dev', 'parent_obj.parent_obj'], > + ['port.br.dev', 'parent_obj.parent_obj.parent_obj'], > + ['port.br.dev.exp.aer_log', > + 'parent_obj.parent_obj.parent_obj.exp.aer_log'], > + ['br.dev.exp.aer_log', > + 'parent_obj.parent_obj.exp.aer_log'], > + ['shpc', 'bridge.dev.shpc'], > + ['pci0_status', > + 'acpi_pci_hotplug.acpi_pcihp_pci_status[0x0]'], > + ['pci_irq_levels', 'pci_irq_levels_vmstate'], > + ['usb-ptr-queue', 'HIDPointerEventQueue'], > + ['num_surfaces', 'ssd.num_surfaces'], > + ['timer', 'timer_expiry'], > + ] I expect this not to be very big, so ... could we prepend the VMState description name on this? "usb-ptr-queue" and "HIDPointerEventQueue" are quite descriptive, but "d" "dev" "pci_dev" ... I am not sure that we want to do this translation for any VMSTateDescription. In particular, we are ending that parent_obj can match with anything :-() My python is rusty (to be generous with me), so I am assuming rest of things are idiomatic Python O:-) Later, Juan.