WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] Dont call msi_unmap_pirq() if did not enabled ms

To: Joe Jin <joe.jin@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] Dont call msi_unmap_pirq() if did not enabled msi
From: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Date: Mon, 16 Nov 2009 10:15:46 -0500
Cc: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Hackel, Kurt" <kurt.hackel@xxxxxxxxxx>, Jerry Yuanjiang Ou <yuanjiang.ou@xxxxxxxxxx>, greg.marsden@xxxxxxxxxx, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Delivery-date: Mon, 16 Nov 2009 07:18:03 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20091116120030.GA13803@xxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20091116120030.GA13803@xxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.19 (2009-01-05)
On Mon, Nov 16, 2009 at 08:00:30PM +0800, Joe Jin wrote:
> Hi,
> 
> When device driver unload, it may call pci_disable_msi(), if msi did not 
> enabled but do msi_unmap_pirq(), then later driver reload and without

Where does that happen? That looks to be a driver bug as well.

> msi, then will failed in request_irq() for irq_desc[irq]->chip valie is 
> no_irq_chip. So when did not enable msi during driver initializing, then

Won't that mean it is unusable? As in, you can't allocate an IRQ
to the device when the irq_desc[irq]->chip_value==no_irq_chip?

What kernel is this for? It does not look like the 2.6.18-xen.hg?

Either way, patch looks fine (except the spelling error).

> unloaded driver will not try to disable it.
> 
> Signed-off-by: Joe Jin <joe.jin@xxxxxxxxxx>
> ---
>  msi-xen.c |    6 ++++++
>  1 file changed, 6 insertions(+)
> 
> --- a/drivers/pci/msi-xen.c   2009-11-16 10:48:26.000000000 +0800
> +++ b/drivers/pci/msi-xen.c   2009-11-16 19:27:17.000000000 +0800
> @@ -670,6 +670,12 @@ void pci_disable_msi(struct pci_dev* dev
>       if (!pos)
>               return;
>  
> +     if (!(dev->msi_enabled)) {
> +             printk(KERN_INFO "PCI: %s: Device did not eanble MSI.\n",
                                                          ^^^^^- enable.

> +                    pci_name(dev));
> +             return;
> +     }
> +     
>       pirq = dev->irq;
>       /* Restore dev->irq to its default pin-assertion vector */
>       dev->irq = dev->irq_old;
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel