qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] Do not try loading option ROM for hotplug PCI d


From: Aurelien Jarno
Subject: Re: [Qemu-devel] [PATCH] Do not try loading option ROM for hotplug PCI device in pc-0.11 compat mode
Date: Fri, 30 Jul 2010 23:08:47 +0200
User-agent: Mutt/1.5.20 (2009-06-14)

On Fri, Jul 23, 2010 at 05:56:38PM +0200, address@hidden wrote:
> From: Jes Sorensen <address@hidden>
> 
> pc-0.11 and older uses fw_cfg to provide option ROMs. As fw_cfg is setup
> at init time, it is not possible to load an option ROM for a hotplug
> device when running in compat mode.
> 
> v2: Alex Williamson pointed out that one can get to qdev directly from
> pci_dev, so no need to pass it down.
> 
> Signed-off-by: Jes Sorensen <address@hidden>
> ---
>  hw/pci.c |    8 ++++++--
>  1 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/pci.c b/hw/pci.c
> index a98d6f3..2d38643 100644
> --- a/hw/pci.c
> +++ b/hw/pci.c
> @@ -1810,11 +1810,15 @@ static int pci_add_option_rom(PCIDevice *pdev)
>          return 0;
>  
>      if (!pdev->rom_bar) {
> +        int class;
>          /*
>           * Load rom via fw_cfg instead of creating a rom bar,
> -         * for 0.11 compatibility.
> +         * for 0.11 compatibility. fw_cfg is initialized at boot, so
> +         * we cannot do hotplug load of option roms.
>           */
> -        int class = pci_get_word(pdev->config + PCI_CLASS_DEVICE);
> +        if (pdev->qdev.hotplugged)
> +            return 0;

Missing braces around the return 0 line. 

> +        class = pci_get_word(pdev->config + PCI_CLASS_DEVICE);
>          if (class == 0x0300) {
>              rom_add_vga(pdev->romfile);
>          } else {
> -- 
> 1.7.1.1

Otherwise looks good.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
address@hidden                 http://www.aurel32.net



reply via email to

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