summaryrefslogtreecommitdiff
path: root/hw/intc
diff options
context:
space:
mode:
authorHalil Pasic <pasic@linux.vnet.ibm.com>2017-06-23 16:48:23 +0200
committerJuan Quintela <quintela@redhat.com>2017-06-28 11:18:44 +0200
commitd2164ad35c411d97abd2aa5c6f160283d215e214 (patch)
treefffb1821aade0b81089fc02cd5d6880024a265b0 /hw/intc
parent01f6e14c78f480ade5521139019fdf930a7affaa (diff)
downloadqemu-d2164ad35c411d97abd2aa5c6f160283d215e214.tar.gz
vmstate: error hint for failed equal checks
In some cases a failing VMSTATE_*_EQUAL does not mean we detected a bug, but it's actually the best we can do. Especially in these cases a verbose error message is required. Let's introduce infrastructure for specifying a error hint to be used if equal check fails. Let's do this by adding a parameter to the _EQUAL macros called _err_hint. Also change all current users to pass NULL as last parameter so nothing changes for them. Signed-off-by: Halil Pasic <pasic@linux.vnet.ibm.com> Message-Id: <20170623144823.42936-1-pasic@linux.vnet.ibm.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'hw/intc')
-rw-r--r--hw/intc/openpic.c2
-rw-r--r--hw/intc/xics.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/hw/intc/openpic.c b/hw/intc/openpic.c
index f966d0604a..5595bb2e8c 100644
--- a/hw/intc/openpic.c
+++ b/hw/intc/openpic.c
@@ -1499,7 +1499,7 @@ static const VMStateDescription vmstate_openpic = {
VMSTATE_UINT32(max_irq, OpenPICState),
VMSTATE_STRUCT_VARRAY_UINT32(src, OpenPICState, max_irq, 0,
vmstate_openpic_irqsource, IRQSource),
- VMSTATE_UINT32_EQUAL(nb_cpus, OpenPICState),
+ VMSTATE_UINT32_EQUAL(nb_cpus, OpenPICState, NULL),
VMSTATE_STRUCT_VARRAY_UINT32(dst, OpenPICState, nb_cpus, 0,
vmstate_openpic_irqdest, IRQDest),
VMSTATE_STRUCT_ARRAY(timers, OpenPICState, OPENPIC_MAX_TMR, 0,
diff --git a/hw/intc/xics.c b/hw/intc/xics.c
index 7ccfb53c55..d4194d647b 100644
--- a/hw/intc/xics.c
+++ b/hw/intc/xics.c
@@ -574,7 +574,7 @@ static const VMStateDescription vmstate_ics_simple = {
.post_load = ics_simple_dispatch_post_load,
.fields = (VMStateField[]) {
/* Sanity check */
- VMSTATE_UINT32_EQUAL(nr_irqs, ICSState),
+ VMSTATE_UINT32_EQUAL(nr_irqs, ICSState, NULL),
VMSTATE_STRUCT_VARRAY_POINTER_UINT32(irqs, ICSState, nr_irqs,
vmstate_ics_simple_irq,