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

[Xen-devel] Failure: passthrough of 2 PCIe devices

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] Failure: passthrough of 2 PCIe devices
From: Dietmar Hahn <dietmar.hahn@xxxxxxxxxxxxxx>
Date: Mon, 13 Dec 2010 15:23:42 +0100
Delivery-date: Mon, 13 Dec 2010 06:24:43 -0800
Dkim-signature: v=1; a=rsa-sha256; c=simple/simple; d=ts.fujitsu.com; i=dietmar.hahn@xxxxxxxxxxxxxx; q=dns/txt; s=s1536b; t=1292250226; x=1323786226; h=from:to:subject:date:mime-version: content-transfer-encoding:message-id; z=From:=20Dietmar=20Hahn=20<dietmar.hahn@xxxxxxxxxxxxxx> |To:=20"xen-devel@xxxxxxxxxxxxxxxxxxx"=20<xen-devel@lists .xensource.com>|Subject:=20Failure:=20passthrough=20of=20 2=20PCIe=20devices|Date:=20Mon,=2013=20Dec=202010=2015:23 :42=20+0100|MIME-Version:=201.0 |Content-Transfer-Encoding:=207bit|Message-Id:=20<2010121 31523.42642.dietmar.hahn@xxxxxxxxxxxxxx>; bh=Gi6IWBT8spykl3hpiliwt2sORpSIftHQknT5Fub47MQ=; b=lvfPWDYpW1jvRRGMLyGwJ8Jcn4xi/71J5coxykSEEcoOhq6XPGZ/f345 IgnH3c8F6tj37RjMiIs9gnnZNu9KLxlzXrgSqDCO/d2yptwO1SgkywIOF E9Yx8cKUNYKh2btwxEVyOFGngQHd3/1hy3NEvSsPf2RyINbUpPDa9PLJm kATQDZ2MYzt+TMoBLr1YW0+3Mf2hfqhG1uQcK3riPNJ8oDgpDI+9JmyUN 7o8NCh4lbR2KqSUOE2lcHXEOghMyW;
Domainkey-signature: s=s1536a; d=ts.fujitsu.com; c=nofws; q=dns; h=X-SBRSScore:X-IronPort-AV:Received:X-IronPort-AV: Received:Received:From:To:Subject:Date:User-Agent: X-KMail-Markup:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id; b=Ik0/ViQiHGpgJongXTy1pbRnJhebgpaxbl5ZyADeGKk5pYclrGgwzOgk qYtIa6ZzOLjLmHNZ2YpBbtlunZIk1lOYuu1Y0EiplZwzv9KKud2+n69Rt m2nGiJmb1ptfwwMovHoo/0ZYoZIONOozicnK5zBSa8nGFBdvIeMjRLtD3 bobRkPxmW6m0dAvEeTJ3RXfaC7+QQ+B0X1yiKqlCNnKajBCEQeLQGf2nH MKusAlC+pTQsAEC9aLaRNKGxbBDi6;
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.13.5 (Linux/2.6.34.7-0.5-xen; KDE/4.5.4; x86_64; ; )

Hi list,

I did some tests with passthrough of 2 PCIe devices to a Windows 7 HVM and both

failed to work.

# lspci

...

00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05)

10:00.0 Network controller: Intel Corporation Centrino Advanced-N 6200 (rev 35)

...

In the qemu log I found the following messages:

register_real_device: Assigning real physical device 00:1b.0 ...

register_real_device: Enable MSI translation via per device option

register_real_device: Disable power management

pt_iomul_init: Error: pt_iomul_init: No such device: setup io multiplexing failed! 0x0:0x1b.0x0

pt_register_regions: IO region registered (size=0x00004000 base_addr=0xf2720004)

pt_msi_setup: pt_msi_setup requested pirq = 0

pt_msi_setup: msi mapped with pirq 0

pci_intx: intx=1

register_real_device: Real physical device 00:1b.0 registered successfuly!

IRQ type = MSI-INTx

vcpu-set: watch node error.

xs_read(/local/domain/3/log-throttling): read error

qemu: ignoring not-understood drive `/local/domain/3/log-throttling'

medium change watch on `/local/domain/3/log-throttling' - unknown device, ignored

dm-command: hot insert pass-through pci dev

register_real_device: Assigning real physical device 10:00.0 ...

register_real_device: Enable MSI translation via per device option

register_real_device: Disable power management

pt_iomul_init: Error: pt_iomul_init: No such device: setup io multiplexing failed! 0x10:0x0.0x0

pt_register_regions: IO region registered (size=0x00002000 base_addr=0xf2400004)

pt_msi_setup: pt_msi_setup requested pirq = 0

pt_msi_setup: msi mapped with pirq 0

pci_intx: intx=1

register_real_device: Real physical device 10:00.0 registered successfuly!

On the xen serial console I saw:

...

(XEN) [VT-D]io.c:327: d3: unbind: m_gsi=0 g_gsi=36 device=5 intx=0

(XEN) [VT-D]io.c:386: d3 unmap: m_irq=0 device=5 intx=0

(XEN) [VT-D]io.c:303: d3: bind: m_gsi=17 g_gsi=36 device=5 intx=0

(XEN) domctl.c:920:d0 pt_irq_create_bind failed!

(XEN) irq.c:1590: dom3: forcing unbind of pirq 0

In xen-4.0 (SLES11-SP1) all went fine.

I saw some added code in tools/ioemu-remote/hw/pt-msi.c function pt_msi_setup()

in xen-unstable:

gvec = dev->msi->data & 0xFF;

if (!gvec) {

/* if gvec is 0, the guest is asking for a particular pirq that

* is passed as dest_id */

pirq = (dev->msi->addr_hi & 0xffffff00) |

((dev->msi->addr_lo >> MSI_TARGET_CPU_SHIFT) & 0xff);

PT_LOG("pt_msi_setup requested pirq = %d\n", pirq);

}

If I remove this code the device 00:1b.0 gets pirq 37 and 00:10.0 gets pirq 36.

Now at least device 00:10.0 (WLAN) works. The audio device is still another problem.

Is this a already seen problem after all these msi discussions on the list?

Thanks!

Dietmar.

--

Company details: http://ts.fujitsu.com/imprint.html

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