Patchwork [PULL,1/2] vfio: Correction in vfio_rom_read when attempting rom loading

login
register
mail settings
Submitter Alex Williamson
Date March 25, 2014, 6:30 p.m.
Message ID <20140325183019.6587.81280.stgit@bling.home>
Download mbox | patch
Permalink /patch/333655/
State New
Headers show

Comments

Alex Williamson - March 25, 2014, 6:30 p.m.
From: Bandan Das <bsd@redhat.com>

commit e638073c569e801ce9de added a flag to track whether
a previous rom read had failed. Accidentally, the code
ended up adding vfio_load_option_rom twice. (Thanks to Alex
for spotting it)

Signed-off-by: Bandan Das <bsd@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
---
 hw/misc/vfio.c |    5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

Patch

diff --git a/hw/misc/vfio.c b/hw/misc/vfio.c
index c2c688c..7147430 100644
--- a/hw/misc/vfio.c
+++ b/hw/misc/vfio.c
@@ -1192,11 +1192,8 @@  static uint64_t vfio_rom_read(void *opaque, hwaddr addr, unsigned size)
     uint64_t val = ((uint64_t)1 << (size * 8)) - 1;
 
     /* Load the ROM lazily when the guest tries to read it */
-    if (unlikely(!vdev->rom)) {
+    if (unlikely(!vdev->rom && !vdev->rom_read_failed)) {
         vfio_pci_load_rom(vdev);
-        if (unlikely(!vdev->rom && !vdev->rom_read_failed)) {
-            vfio_pci_load_rom(vdev);
-        }
     }
 
     memcpy(&val, vdev->rom + addr,