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/
Home Products Support Community News


Re: [Xen-devel] pciback bug "secondary bus reset failed"

To: Alex Zeffertt <alex.zeffertt@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] pciback bug "secondary bus reset failed"
From: Pasi Kärkkäinen <pasik@xxxxxx>
Date: Mon, 24 May 2010 19:30:23 +0300
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Mon, 24 May 2010 09:31:26 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4BFAA0DD.3060900@xxxxxxxxxxxxx>
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: <4BFAA0DD.3060900@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.18 (2008-05-17)
On Mon, May 24, 2010 at 04:53:01PM +0100, Alex Zeffertt wrote:
> Hi,
> I'm trying to passthrough a PCI network card to a domU guest, but I'm 
> hitting a bug that prevents the IRQ being unbound from dom0.
> Here are the steps I am taking:
>  * configure Xen to pass $pci (0000:06:00.0) through to guest VM
>  * unbind from current driver in dom0 and rebind to pciback:
>      echo -n $pci > /sys/bus/pci/devices/$pci/driver/unbind
>      modprobe pciback
>      echo -n $pci > /sys/bus/pci/drivers/pciback/new_slot
>      echo -n $pci > /sys/bus/pci/drivers/pciback/bind
>  * start guest VM
> I then get the following on the dom0 console
>   pciback 0000:06:00.0: secondary bus reset failed for device - all functions 
> \
>   need to be co-assigned - err: 6
>   pciback 0000:06:00.0: FLR functionality not supported; attempts to use \
>   secondary bus reset unsuccessful;
>   pciback 0000:06:00.0: FLR not performed for device

Please check this wiki page:

It has a chapter about the "all functions need to be co-assigned" error..

-- Pasi

> I don't understand the above, but the upshot is that pirq_guest_unbind() 
> does not get called.  Later when the guest does an "ifconfig up" the IRQ 
> gets sent to dom0 instead of the domU, and this causes the following to 
> appear on the dom0 console:
>   irq 21: nobody cared (try booting with the "irqpoll" option)
>   Pid: 0, comm: swapper Tainted: G          
>    #1
>    [<c0154517>] __report_bad_irq+0x27/0x90
>    [<c015487c>] note_interrupt+0x2fc/0x330
>    [<f009e92d>] ? usb_hcd_irq+0x4d/0xe0 [usbcore]
>    [<c0153951>] ? handle_IRQ_event+0x31/0x90
>    [<c0155204>] handle_level_irq+0xe4/0x110
>    [<c0107733>] do_IRQ+0x43/0x90
> I have ioapic_ack=old on the Xen command line.  This causes Xen to EOI 
> the interrupt straight away instead of waiting for a guest to EOI and 
> forwarding that on to the IO APIC.  If I remove this then since no guest 
> handles the interrupt, all lower priority IRQs get blocked forever and I 
> lose access to my hard disk!
> Any help would be much appreciated.
> Regards,
> Alex Zeffertt
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

Xen-devel mailing list