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-users

Re: AW: [Xen-users] Paramters for PCI passthrough in config file

To: Carsten Schiers <carsten@xxxxxxxxxx>
Subject: Re: AW: [Xen-users] Paramters for PCI passthrough in config file
From: Hans Jörg Maurer <hjm@xxxxxxxxxxxxx>
Date: Tue, 03 Mar 2009 17:58:02 +0100
Cc: xen-users@xxxxxxxxxxxxxxxxxxx
Delivery-date: Tue, 03 Mar 2009 08:53:01 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <15480426.11236078999240.JavaMail.root@uhura>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <15480426.11236078999240.JavaMail.root@uhura>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.19 (Windows/20081209)
Unfortunally I'm not familar with patching.

On my system pci looks

server:/etc/xen# lspci -tv
-[0000:00]-+-00.0  Intel Corporation 82Q35 Express DRAM Controller
+-02.0 Intel Corporation 82Q35 Express Integrated Graphics Controller
          +-19.0  Intel Corporation 82566DM-2 Gigabit Network Connection
+-1a.0 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 +-1a.1 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 +-1a.2 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 +-1a.7 Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 +-1b.0 Intel Corporation 82801I (ICH9 Family) HD Audio Controller
          +-1c.0-[0000:05]--
+-1c.4-[0000:0d]----00.0 Intel Corporation 82573L Gigabit Ethernet Controller +-1d.0 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 +-1d.1 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 +-1d.2 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 +-1d.7 Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1
For domU1 are
          +-1e.0-[0000:11-12]--+-00.0  Philips Semiconductors SAA7146
          |                    +-09.0  Philips Semiconductors SAA7146
For domU2 I need:
| \-0a.0-[0000:12]--+-00.0 Brooktree Corporation Bt878 Video Capture | +-00.1 Brooktree Corporation Bt878 Audio Capture | +-01.0 Brooktree Corporation Bt878 Video Capture | +-01.1 Brooktree Corporation Bt878 Audio Capture | +-02.0 Brooktree Corporation Bt878 Video Capture | +-02.1 Brooktree Corporation Bt878 Audio Capture | +-03.0 Brooktree Corporation Bt878 Video Capture | \-03.1 Brooktree Corporation Bt878 Audio Capture
The rest
+-1f.0 Intel Corporation 82801IO (ICH9DO) LPC Interface Controller +-1f.2 Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller
          +-1f.3  Intel Corporation 82801I (ICH9 Family) SMBus Controller
+-1f.5 Intel Corporation 82801I (ICH9 Family) 2 port SATA IDE Controller
          \-1f.6  Intel Corporation 82801I (ICH9 Family) Thermal Subsystem

It was working with Kernel 2.6.18 under debian etch. Now I installed lenny, had ubuntu 8.04 and 8.10 before. xmI will use a small script to pass the parameters...

#/bash/sh
xm create lenny50.cfg -c pci='11:00.0' pci='11:09.0'

This brings in the domU the following list:

lenny50:~# lspci -tv
-[0000:00]-+-00.0  Philips Semiconductors SAA7146
          \-01.0  Philips Semiconductors SAA7146

It should work.

Maybe one day there will be version with all the benefits and a unified interface...
Thanks

Hans



Carsten Schiers schrieb:
It's most likely that your PCI devices reside on the same PCI bridge. When 
including
support for FLR, a requirement check was added to have all PCI devices that 
reside on
one PCI bridge to be co-assiged to one DomU, although that's not necessary when 
the
DomU is PV.

You can check with lspci -tv whether this is the case and when you use pv domains, you might use this patch that will disable FLR and this kind of message.

BR,

Carsten.

diff -r 6ab55f716ce3 tools/python/xen/util/pci.py
--- a/tools/python/xen/util/pci.py  Thu Oct 09 17:18:11 2008 +0100
+++ b/tools/python/xen/util/pci.py  Fri Oct 10 13:16:00 2008 +0800
@@ -696,6 +696,7 @@ class PciDevice:
     def do_FLR(self):
         """ Perform FLR (Functional Level Reset) for the device.
         """
+        return
         if self.dev_type == DEV_TYPE_PCIe_ENDPOINT:
             # If PCIe device supports FLR, we use it.
             if self.pcie_flr:
diff -r 6ab55f716ce3 tools/python/xen/xend/server/pciif.py
--- a/tools/python/xen/xend/server/pciif.py Thu Oct 09 17:18:11 2008 +0100
+++ b/tools/python/xen/xend/server/pciif.py Fri Oct 10 13:18:25 2008 +0800
@@ -375,6 +375,7 @@ class PciController(DevController):
             pci_dev_list = pci_dev_list + [(domain, bus, slot, func)]

         for (domain, bus, slot, func) in pci_dev_list:
+            continue
             try:
                 dev = PciDevice(domain, bus, slot, func)
             except Exception, e:

----- Originalnachricht -----
Von: Hans Jörg Maurer <hjm@xxxxxxxxxxxxx>
Gesendet: Die, 3.3.2009 11:56
An: xen-users@xxxxxxxxxxxxxxxxxxx
Betreff: [Xen-users] Paramters for PCI passthrough in config file

Hi,
I was trying now since two weeks to pass pci cards to different domU's. First I used XEN 3.3, but there I got error messages like

must be co-assigned to the same guest , so I switched to other distris and 
versions.

Now I have:

mainserver:/etc/xen# xm info
host                   : server
release                : 2.6.26-1-xen-amd64
version                : #1 SMP Sat Jan 10 20:39:26 UTC 2009
machine                : x86_64
nr_cpus                : 4
nr_nodes               : 1
cores_per_socket       : 4
threads_per_core       : 1
cpu_mhz                : 2394
hw_caps                : 
bfebfbff:20100800:00000000:00000140:0000e3bd:00000000:00000001
total_memory           : 8180
free_memory            : 256
node_to_cpu            : node0:0-3
xen_major              : 3
xen_minor              : 2
xen_extra              : -1
xen_caps               : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 
hvm-3.0-x86_32p hvm-3.0-x86_64
xen_scheduler          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : unavailable
cc_compiler            : gcc version 4.3.1 (Debian 4.3.1-2)
cc_compile_by          : waldi
cc_compile_domain      : debian.org
cc_compile_date        : Sat Jun 28 09:32:18 UTC 2008
xend_config_format     : 4

and run into the problem that I can pass only one pci to a DomU. I use the 
following parameters in the /etc/xen/domU.cfg


pci         = [ '11:00.0','11:09:0' ]

I have tried different versions like
pci         = [ '11:00.0', '11:09:0' ] or
pci         = [ '0000:11:00.0', '0000:11:09:0' ] and so on.

The only solution is to pass these parameters with the command line, like:

server:/etc/xen# xm create DomU.cfg -c pci='11:00.0' pci='11:09.0'

Then I get two PCI cards inside the DomU.

Does anyone know how to pass them correctly inside the config file.

Thanks

Hans

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


--
pme maurer GmbH proactive maintenance engineering Schaezlerstr. 30 D-86152 Augsburg Tel:+49 (821) 272 012 Fax:+49 (821) 272 030 www.pmeonline.net www.ir-check.de mail: office@xxxxxxxxxxxxx
Registriert beim Amtsgericht Augsburg HRB 23660
Geschäftsführer: Hans Jörg Maurer

Attachment: hjm.vcf
Description: Vcard

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users
<Prev in Thread] Current Thread [Next in Thread>