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


[Xen-users] PCIPassthrough usb controller

To: xen-users@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-users] PCIPassthrough usb controller
From: Helmut Wieser <helmut.wieser@xxxxxxxx>
Date: Fri, 04 Jun 2010 16:55:27 +0200
Delivery-date: Fri, 04 Jun 2010 07:57:48 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv: Gecko/20100317 Lightning/1.0b1 Thunderbird/3.0.4

I used qemu-dm USB 1.1 passthrough to use a USB mouse on a windows XP domU. I even installed the gplpv drivers, but performance is still lacking. Next I wanted to passthrough the whole USB controller using PCI passthrough, as described here http://wiki.xensource.com/xenwiki/XenUSBPassthrough.
I've hidden the PCI devices using xen-pciback.hide kernel parameters.

I'm running xen-4.0.0 STABLE on a and debian 2.6.32-5-xen-amd64 kernels, same error happens on both.

xm pci-list-assignable-devices gives

Where 00:1a are the two USB controllers I want to pass through.
See here:
lspci -nn|grep USB
00:1a.0 USB Controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4 [8086:3a37] 00:1a.1 USB Controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5 [8086:3a38]

The domU fails to come up, here's the qemu-dm log:
domid: 1
config qemu network with xen bridge for  tap1.0 eth0
Watching /local/domain/0/device-model/1/logdirty/cmd
Watching /local/domain/0/device-model/1/command
char device redirected to /dev/pts/1
qemu_map_cache_init nr_buckets = 10000 size 4194304
shared page at pfn feffd
buffered io page at pfn feffb
Guest uuid = a0fd678b-5d01-7a2a-cc3b-8299b25201e1
Time offset set 0
Register xen platform.
Done register platform.
platform_fixed_ioport: changed ro/rw state of ROM memory area. now is rw state.
xs_read(/local/domain/0/device-model/1/xen_extended_power_mgmt): read error
medium change watch on `hdc' (index: 1): /dev/cdrom
I/O request not ready: 0, ptr: 0, port: 0, data: 0, count: 0, size: 0
Log-dirty: no command yet.
xs_read(/local/domain/1/log-throttling): read error
qemu: ignoring not-understood drive `/local/domain/1/log-throttling'
medium change watch on `/local/domain/1/log-throttling' - unknown device, ignored
dm-command: hot insert pass-through pci dev
register_real_device: Assigning real physical device 00:1a.1 ...
register_real_device: Enable MSI translation via per device option
register_real_device: Disable power management
pt_iomul_init: Error: pt_iomul_init can't open file /dev/xen/pci_iomul: No such file or directory: 0x0:0x1a.0x1 pt_register_regions: IO region registered (size=0x00000020 base_addr=0x0000d021)
pci_intx: intx=2
register_real_device: Real physical device 00:1a.1 registered successfuly!
IRQ type = INTx
pt_ioport_map: e_phys=c200 pio_base=d020 len=32 index=4 first_map=1
platform_fixed_ioport: changed ro/rw state of ROM memory area. now is rw state. platform_fixed_ioport: changed ro/rw state of ROM memory area. now is ro state.

I haven't tried using pci-stub yet, but I don't think the result will be different. What's the problem here? My domU works (more or less ;-) )fine without those two PCI devices passed through.


Xen-users mailing list

<Prev in Thread] Current Thread [Next in Thread>