Print error when failing to load PCI config data
authorDr. David Alan Gilbert <dgilbert@redhat.com>
Wed, 3 Jun 2015 16:58:01 +0000 (17:58 +0100)
committerMichael Tokarev <mjt@tls.msk.ru>
Tue, 23 Jun 2015 16:57:27 +0000 (19:57 +0300)
When loading migration fails due to a disagreement about
PCI config data we don't currently get any errors explaining
that was the cause of the problem or which byte in the config
data was at fault.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
hw/pci/pci.c

index 45394cf..442f822 100644 (file)
@@ -428,6 +428,10 @@ static int get_pci_config_device(QEMUFile *f, void *pv, size_t size)
     for (i = 0; i < size; ++i) {
         if ((config[i] ^ s->config[i]) &
             s->cmask[i] & ~s->wmask[i] & ~s->w1cmask[i]) {
+            error_report("%s: Bad config data: i=0x%x read: %x device: %x "
+                         "cmask: %x wmask: %x w1cmask:%x", __func__,
+                         i, config[i], s->config[i],
+                         s->cmask[i], s->wmask[i], s->w1cmask[i]);
             g_free(config);
             return -EINVAL;
         }