Andrew Lyon
2011-Apr-14 09:46 UTC
[Xen-users] pci passthru not working after 4.0.1 > 4.1.0 upgrade
Hi,
I''ve just upgraded to 4.1.0 from 4.0.1 and found that one of my
hvm''s
failed to start due to pci passthru failure:
xm create xen-win7.cfg
Using config file "./xen-win7.cfg".
Error: pci: PCI Backend and pci-stub don''t own sibling device
0000:00:00.0 of device 0000:02:01.1
Setting from guest config file:
pci = [ ''0000:02:01.0'', ''0000:02:01.1'',
''0000:02:01.2'' ]
02:01.0 USB Controller: NEC Corporation USB (rev 43)
02:01.1 USB Controller: NEC Corporation USB (rev 43)
02:01.2 USB Controller: NEC Corporation USB 2.0 (rev 04)
It worked before, and the device is listed as available to be assigned:
xm pci-list-assignable-devices
0000:02:01.0
0000:02:01.1
0000:02:01.2
lspci -tv
-[0000:00]-+-00.0 Intel Corporation 5400 Chipset Memory Controller Hub
+-01.0-[01-02]----00.0-[02]--+-01.0 NEC Corporation USB
| +-01.1 NEC Corporation USB
| \-01.2 NEC Corporation USB 2.0
+-05.0-[03]----00.0 nVidia Corporation G96 [Quadro FX 380]
+-09.0-[04-07]--+-00.0-[05-06]----00.0-[06]----00.0 Adaptec AAC-RAID
| \-00.3-[07]--+-02.0 LSI Logic / Symbios
Logic 53c1010 Ultra3 SCSI Adapter
| \-02.1 LSI Logic / Symbios
Logic 53c1010 Ultra3 SCSI Adapter
+-0f.0 Intel Corporation 5400 Chipset QuickData Technology Device
+-10.0 Intel Corporation 5400 Chipset FSB Registers
+-10.1 Intel Corporation 5400 Chipset FSB Registers
+-10.2 Intel Corporation 5400 Chipset FSB Registers
+-10.3 Intel Corporation 5400 Chipset FSB Registers
+-10.4 Intel Corporation 5400 Chipset FSB Registers
+-11.0 Intel Corporation 5400 Chipset CE/SF Registers
+-15.0 Intel Corporation 5400 Chipset FBD Registers
+-15.1 Intel Corporation 5400 Chipset FBD Registers
+-16.0 Intel Corporation 5400 Chipset FBD Registers
+-16.1 Intel Corporation 5400 Chipset FBD Registers
+-1b.0 Intel Corporation 631xESB/632xESB High Definition
Audio Controller
+-1c.0-[08]--+-00.0 Intel Corporation 82575EB Gigabit
Network Connection
| \-00.1 Intel Corporation 82575EB Gigabit
Network Connection
+-1d.0 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI
USB Controller #1
+-1d.1 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI
USB Controller #2
+-1d.2 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI
USB Controller #3
+-1d.3 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI
USB Controller #4
+-1d.7 Intel Corporation 631xESB/632xESB/3100 Chipset EHCI
USB2 Controller
+-1e.0-[09]--+-04.0 VIA Technologies, Inc. VT82xxxxx UHCI
USB 1.1 Controller
| +-04.1 VIA Technologies, Inc. VT82xxxxx UHCI
USB 1.1 Controller
| +-04.2 VIA Technologies, Inc. USB 2.0
| \-08.0 Texas Instruments TSB43AB22/A
IEEE-1394a-2000 Controller (PHY/Link)
+-1f.0 Intel Corporation 631xESB/632xESB/3100 Chipset LPC
Interface Controller
+-1f.1 Intel Corporation 631xESB/632xESB IDE Controller
+-1f.2 Intel Corporation 631xESB/632xESB/3100 Chipset SATA
IDE Controller
\-1f.3 Intel Corporation 631xESB/632xESB/3100 Chipset
SMBus Controller
I am running kernel 2.6.38 xenified with suse patches, not pv_ops,
using the pciback.hide syntax to hide the device from dom0 drivers.
I did some testing and I can passthru 0000:02:01.0 but not the other
two functions of the usb card.
Andy
_______________________________________________
Xen-users mailing list
Xen-users@lists.xensource.com
http://lists.xensource.com/xen-users
Andrew Lyon
2011-Apr-14 10:48 UTC
[Xen-users] Re: pci passthru not working after 4.0.1 > 4.1.0 upgrade
On Thu, Apr 14, 2011 at 10:46 AM, Andrew Lyon <andrew.lyon@gmail.com> wrote:> Hi, > > I''ve just upgraded to 4.1.0 from 4.0.1 and found that one of my hvm''s > failed to start due to pci passthru failure: > > xm create xen-win7.cfg > Using config file "./xen-win7.cfg". > Error: pci: PCI Backend and pci-stub don''t own sibling device > 0000:00:00.0 of device 0000:02:01.1 > > Setting from guest config file: > > pci = [ ''0000:02:01.0'', ''0000:02:01.1'', ''0000:02:01.2'' ] > > 02:01.0 USB Controller: NEC Corporation USB (rev 43) > 02:01.1 USB Controller: NEC Corporation USB (rev 43) > 02:01.2 USB Controller: NEC Corporation USB 2.0 (rev 04) > > It worked before, and the device is listed as available to be assigned: > > xm pci-list-assignable-devices > 0000:02:01.0 > 0000:02:01.1 > 0000:02:01.2 > > lspci -tv > -[0000:00]-+-00.0 Intel Corporation 5400 Chipset Memory Controller Hub > +-01.0-[01-02]----00.0-[02]--+-01.0 NEC Corporation USB > | +-01.1 NEC Corporation USB > | \-01.2 NEC Corporation USB 2.0 > +-05.0-[03]----00.0 nVidia Corporation G96 [Quadro FX 380] > +-09.0-[04-07]--+-00.0-[05-06]----00.0-[06]----00.0 Adaptec AAC-RAID > | \-00.3-[07]--+-02.0 LSI Logic / Symbios > Logic 53c1010 Ultra3 SCSI Adapter > | \-02.1 LSI Logic / Symbios > Logic 53c1010 Ultra3 SCSI Adapter > +-0f.0 Intel Corporation 5400 Chipset QuickData Technology Device > +-10.0 Intel Corporation 5400 Chipset FSB Registers > +-10.1 Intel Corporation 5400 Chipset FSB Registers > +-10.2 Intel Corporation 5400 Chipset FSB Registers > +-10.3 Intel Corporation 5400 Chipset FSB Registers > +-10.4 Intel Corporation 5400 Chipset FSB Registers > +-11.0 Intel Corporation 5400 Chipset CE/SF Registers > +-15.0 Intel Corporation 5400 Chipset FBD Registers > +-15.1 Intel Corporation 5400 Chipset FBD Registers > +-16.0 Intel Corporation 5400 Chipset FBD Registers > +-16.1 Intel Corporation 5400 Chipset FBD Registers > +-1b.0 Intel Corporation 631xESB/632xESB High Definition > Audio Controller > +-1c.0-[08]--+-00.0 Intel Corporation 82575EB Gigabit > Network Connection > | \-00.1 Intel Corporation 82575EB Gigabit > Network Connection > +-1d.0 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > USB Controller #1 > +-1d.1 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > USB Controller #2 > +-1d.2 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > USB Controller #3 > +-1d.3 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > USB Controller #4 > +-1d.7 Intel Corporation 631xESB/632xESB/3100 Chipset EHCI > USB2 Controller > +-1e.0-[09]--+-04.0 VIA Technologies, Inc. VT82xxxxx UHCI > USB 1.1 Controller > | +-04.1 VIA Technologies, Inc. VT82xxxxx UHCI > USB 1.1 Controller > | +-04.2 VIA Technologies, Inc. USB 2.0 > | \-08.0 Texas Instruments TSB43AB22/A > IEEE-1394a-2000 Controller (PHY/Link) > +-1f.0 Intel Corporation 631xESB/632xESB/3100 Chipset LPC > Interface Controller > +-1f.1 Intel Corporation 631xESB/632xESB IDE Controller > +-1f.2 Intel Corporation 631xESB/632xESB/3100 Chipset SATA > IDE Controller > \-1f.3 Intel Corporation 631xESB/632xESB/3100 Chipset > SMBus Controller > > I am running kernel 2.6.38 xenified with suse patches, not pv_ops, > using the pciback.hide syntax to hide the device from dom0 drivers. > > I did some testing and I can passthru 0000:02:01.0 but not the other > two functions of the usb card. > > Andy >This clearly looks like the sibling device check is somehow ending up at the root of the pci device tree which of course is not owned by pciback etc, If I disable the check I can start the domain and the pci usb card is available and seems to work ok. pciif.py line 285: # if sdev.driver!=''pciback'' and sdev.driver!=''pci-stub'': # raise VmError(("pci: PCI Backend and pci-stub don''t "+ \ # "own sibling device %s of device %s"\ # )%(sdev.name, dev.name)) Andy _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Pasi Kärkkäinen
2011-Apr-15 10:14 UTC
Re: [Xen-users] Re: pci passthru not working after 4.0.1 > 4.1.0 upgrade
Hello, I added xen-devel to CC list.. more details in the end of Andrew''s mail below. -- Pasi On Thu, Apr 14, 2011 at 11:48:46AM +0100, Andrew Lyon wrote:> On Thu, Apr 14, 2011 at 10:46 AM, Andrew Lyon <andrew.lyon@gmail.com> wrote: > > Hi, > > > > I''ve just upgraded to 4.1.0 from 4.0.1 and found that one of my hvm''s > > failed to start due to pci passthru failure: > > > > xm create xen-win7.cfg > > Using config file "./xen-win7.cfg". > > Error: pci: PCI Backend and pci-stub don''t own sibling device > > 0000:00:00.0 of device 0000:02:01.1 > > > > Setting from guest config file: > > > > pci = [ ''0000:02:01.0'', ''0000:02:01.1'', ''0000:02:01.2'' ] > > > > 02:01.0 USB Controller: NEC Corporation USB (rev 43) > > 02:01.1 USB Controller: NEC Corporation USB (rev 43) > > 02:01.2 USB Controller: NEC Corporation USB 2.0 (rev 04) > > > > It worked before, and the device is listed as available to be assigned: > > > > xm pci-list-assignable-devices > > 0000:02:01.0 > > 0000:02:01.1 > > 0000:02:01.2 > > > > lspci -tv > > -[0000:00]-+-00.0 Intel Corporation 5400 Chipset Memory Controller Hub > > +-01.0-[01-02]----00.0-[02]--+-01.0 NEC Corporation USB > > | +-01.1 NEC Corporation USB > > | \-01.2 NEC Corporation USB 2.0 > > +-05.0-[03]----00.0 nVidia Corporation G96 [Quadro FX 380] > > +-09.0-[04-07]--+-00.0-[05-06]----00.0-[06]----00.0 Adaptec AAC-RAID > > | \-00.3-[07]--+-02.0 LSI Logic / Symbios > > Logic 53c1010 Ultra3 SCSI Adapter > > | \-02.1 LSI Logic / Symbios > > Logic 53c1010 Ultra3 SCSI Adapter > > +-0f.0 Intel Corporation 5400 Chipset QuickData Technology Device > > +-10.0 Intel Corporation 5400 Chipset FSB Registers > > +-10.1 Intel Corporation 5400 Chipset FSB Registers > > +-10.2 Intel Corporation 5400 Chipset FSB Registers > > +-10.3 Intel Corporation 5400 Chipset FSB Registers > > +-10.4 Intel Corporation 5400 Chipset FSB Registers > > +-11.0 Intel Corporation 5400 Chipset CE/SF Registers > > +-15.0 Intel Corporation 5400 Chipset FBD Registers > > +-15.1 Intel Corporation 5400 Chipset FBD Registers > > +-16.0 Intel Corporation 5400 Chipset FBD Registers > > +-16.1 Intel Corporation 5400 Chipset FBD Registers > > +-1b.0 Intel Corporation 631xESB/632xESB High Definition > > Audio Controller > > +-1c.0-[08]--+-00.0 Intel Corporation 82575EB Gigabit > > Network Connection > > | \-00.1 Intel Corporation 82575EB Gigabit > > Network Connection > > +-1d.0 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > > USB Controller #1 > > +-1d.1 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > > USB Controller #2 > > +-1d.2 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > > USB Controller #3 > > +-1d.3 Intel Corporation 631xESB/632xESB/3100 Chipset UHCI > > USB Controller #4 > > +-1d.7 Intel Corporation 631xESB/632xESB/3100 Chipset EHCI > > USB2 Controller > > +-1e.0-[09]--+-04.0 VIA Technologies, Inc. VT82xxxxx UHCI > > USB 1.1 Controller > > | +-04.1 VIA Technologies, Inc. VT82xxxxx UHCI > > USB 1.1 Controller > > | +-04.2 VIA Technologies, Inc. USB 2.0 > > | \-08.0 Texas Instruments TSB43AB22/A > > IEEE-1394a-2000 Controller (PHY/Link) > > +-1f.0 Intel Corporation 631xESB/632xESB/3100 Chipset LPC > > Interface Controller > > +-1f.1 Intel Corporation 631xESB/632xESB IDE Controller > > +-1f.2 Intel Corporation 631xESB/632xESB/3100 Chipset SATA > > IDE Controller > > \-1f.3 Intel Corporation 631xESB/632xESB/3100 Chipset > > SMBus Controller > > > > I am running kernel 2.6.38 xenified with suse patches, not pv_ops, > > using the pciback.hide syntax to hide the device from dom0 drivers. > > > > I did some testing and I can passthru 0000:02:01.0 but not the other > > two functions of the usb card. > > > > Andy > > > > This clearly looks like the sibling device check is somehow ending up > at the root of the pci device tree which of course is not owned by > pciback etc, If I disable the check I can start the domain and the pci > usb card is available and seems to work ok. > > pciif.py line 285: > > # if sdev.driver!=''pciback'' and sdev.driver!=''pci-stub'': > # raise VmError(("pci: PCI Backend and pci-stub don''t "+ \ > # "own sibling device %s of device %s"\ > # )%(sdev.name, dev.name)) > > Andy > > _______________________________________________ > Xen-users mailing list > Xen-users@lists.xensource.com > http://lists.xensource.com/xen-users_______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users