qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v4 02/18] vmstate-static-checker: script to vali


From: Amit Shah
Subject: Re: [Qemu-devel] [PATCH v4 02/18] vmstate-static-checker: script to validate vmstate changes
Date: Wed, 18 Jun 2014 16:28:22 +0530

On (Wed) 18 Jun 2014 [12:44:12], Juan Quintela wrote:
> Amit Shah <address@hidden> 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 <address@hidden>
> 
> 
> 
> > +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 :-()

Hm; so a 1-1 mapping of stuff that changed.  A similar mapping will
have to be created for all vmsds.

I'll take a look at it.

Do you want to hold off this series till that, or should I just send a
follow-up patch (series) once I get something?

> My python is rusty (to be generous with me), so I am assuming rest of
> things are idiomatic Python O:-)

Heh, I'm hoping so too -- I'm learning python on-the-go with this
script.


                Amit



reply via email to

[Prev in Thread] Current Thread [Next in Thread]