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

Re: [Xen-devel] Xen PCI passthrough & OpenWRT domU


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: Pasi Kärkkäinen <pasik@xxxxxx>
  • Date: Wed, 29 Dec 2010 14:07:35 +0200
  • Delivery-date: Wed, 29 Dec 2010 04:09:28 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On Wed, Dec 29, 2010 at 12:04:17PM +0100, Jean Baptiste Favre wrote:
> Hello,
> I'm trying to make Openwrt running as domU with network cards PCI
> passthrough.
> 
> First part is OK, OpenWRT runs fine as x86 PV domU, but not PCI passthrough.
> 
> Dom0 runs debian Xen packages.
> # cat /proc/cmdline
> placeholder root=/dev/mapper/system-root ro console=tty0 console=hvc0
> console=ttyS0,115200n8 xen-pciback.permissive xen-pciback.hide=(04:00.0)
> pci=resource_alignment=04:00.0 quiet
> 
> # lspci
> ...
> 04:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E
> Gigabit Ethernet Controller (rev 12)
> 
> # uname -a
> Linux remus 2.6.32-5-xen-amd64 #1 SMP Fri Dec 10 17:41:50 UTC 2010
> x86_64 GNU/Linux
> 
> OpenWRT uses upstream kernel 2.6.32.27 (but I also tested 2.6.35.9
> without any changes).
> 

Upstream Linux 2.6.32.27 doesn't have xen-pcifront driver.
Upstream 2.6.35.9 doesn't have it either.

xen-pcifront driver was merged to upcoming upstream 2.6.37 kernel.


> domU informations:
> # cat /proc/cmdline
> root=/dev/xvda2 rw swiotlb=force console=hvc0 xencons=tty
> 
> # lspci
> [empty]
> 

You should see the PCI device with lspci. 
I guess you don't have xen-pcifront driver in use.


> # dmesg | grep -i pci
> Allocating PCI resources starting at 10000000 (gap: 10000000:f0000000)
> PCI: Fatal: No config space access function found
> PCI: System does not support PCI
> PCI: System does not support PCI
> PCI: CLS 0 bytes, default 128
> XENBUS: Device with no driver: device/pci/0
> 
> # dmesg | grep -i xen
>  Xen: 0000000000000000 - 00000000000a0000 (usable)
>  Xen: 00000000000a0000 - 0000000000100000 (reserved)
>  Xen: 0000000000100000 - 0000000010000000 (usable)
>   #0 [00014c6000 - 00014d4000]   XEN PAGETABLES ==> [00014c6000 -
> 00014d4000]
>   #3 [0001483000 - 00014c6000]   XEN START INFO ==> [0001483000 -
> 00014c6000]
> Booting paravirtualized kernel on Xen
> Xen version: 4.0.1 (preserve-AD)
> Xen: using vcpu_info placement
> Kernel command line: root=/dev/xvda2 rw swiotlb=force console=hvc0
> xencons=tty
> Xen: using vcpuop timer interface
> installing Xen timer for CPU 0
> xen_balloon: Initialising balloon driver.
> Switching to clocksource xen
> Initialising Xen virtual ethernet driver.
> XENBUS: Device with no driver: device/pci/0
> XENBUS: Device with no driver: device/console/0
> 
> So, it seems that domU sees PCI device (and sky2 module is loaded), but
> do not recognize it.
> I have tried to compile PCI frontend driver, which is not by default,
> but not sure I succeeded. How can I check it ?
> 
> Another question, are there any requirement in terms of kernel version
> regarding the version of Xen I use ? If yes, how can I check that too ?
> 

xen-pcifront driver is required in the domU kernel.

> Sorry for long email, but I also ask it on OpenWRT devel list without
> answer for now.

See: http://wiki.xensource.com/xenwiki/XenPCIpassthrough

-- Pasi


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.