Message ID | 1466009567-21787-1-git-send-email-lma@suse.com |
---|---|
State | New |
Headers | show |
On 15/06/2016 18:52, Lin Ma wrote: > In function pci_assign_dev_load_option_rom, For those pci devices don't > have 'rom' file under sysfs or if loading ROM from external file, The > function returns NULL, and won't set the passed 'size' variable. > > In these 2 cases, qemu still reports "Invalid ROM" error message, Users > may be confused by it. > > Signed-off-by: Lin Ma <lma@suse.com> > --- > hw/i386/kvm/pci-assign.c | 4 ---- > hw/i386/pci-assign-load-rom.c | 3 +++ > 2 files changed, 3 insertions(+), 4 deletions(-) > > diff --git a/hw/i386/kvm/pci-assign.c b/hw/i386/kvm/pci-assign.c > index db2cbd2..07d14f9 100644 > --- a/hw/i386/kvm/pci-assign.c > +++ b/hw/i386/kvm/pci-assign.c > @@ -1892,8 +1892,4 @@ static void assigned_dev_load_option_rom(AssignedDevice *dev) > pci_assign_dev_load_option_rom(&dev->dev, OBJECT(dev), &size, > dev->host.domain, dev->host.bus, > dev->host.slot, dev->host.function); > - > - if (!size) { > - error_report("pci-assign: Invalid ROM."); > - } > } > diff --git a/hw/i386/pci-assign-load-rom.c b/hw/i386/pci-assign-load-rom.c > index 4bbb08c..0d8e4b2 100644 > --- a/hw/i386/pci-assign-load-rom.c > +++ b/hw/i386/pci-assign-load-rom.c > @@ -40,6 +40,9 @@ void *pci_assign_dev_load_option_rom(PCIDevice *dev, struct Object *owner, > domain, bus, slot, function); > > if (stat(rom_file, &st)) { > + if (errno != ENOENT) { > + error_report("pci-assign: Invalid ROM."); > + } > return NULL; > } > > Cc: qemu-stable@nongnu.org It missed today's pull request, but it's queued. Thanks, Paolo
diff --git a/hw/i386/kvm/pci-assign.c b/hw/i386/kvm/pci-assign.c index db2cbd2..07d14f9 100644 --- a/hw/i386/kvm/pci-assign.c +++ b/hw/i386/kvm/pci-assign.c @@ -1892,8 +1892,4 @@ static void assigned_dev_load_option_rom(AssignedDevice *dev) pci_assign_dev_load_option_rom(&dev->dev, OBJECT(dev), &size, dev->host.domain, dev->host.bus, dev->host.slot, dev->host.function); - - if (!size) { - error_report("pci-assign: Invalid ROM."); - } } diff --git a/hw/i386/pci-assign-load-rom.c b/hw/i386/pci-assign-load-rom.c index 4bbb08c..0d8e4b2 100644 --- a/hw/i386/pci-assign-load-rom.c +++ b/hw/i386/pci-assign-load-rom.c @@ -40,6 +40,9 @@ void *pci_assign_dev_load_option_rom(PCIDevice *dev, struct Object *owner, domain, bus, slot, function); if (stat(rom_file, &st)) { + if (errno != ENOENT) { + error_report("pci-assign: Invalid ROM."); + } return NULL; }
In function pci_assign_dev_load_option_rom, For those pci devices don't have 'rom' file under sysfs or if loading ROM from external file, The function returns NULL, and won't set the passed 'size' variable. In these 2 cases, qemu still reports "Invalid ROM" error message, Users may be confused by it. Signed-off-by: Lin Ma <lma@suse.com> --- hw/i386/kvm/pci-assign.c | 4 ---- hw/i386/pci-assign-load-rom.c | 3 +++ 2 files changed, 3 insertions(+), 4 deletions(-)