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

[Xen-API] PCI pass through XCP 1.6


  • To: xen-api@xxxxxxxxxxxxx
  • From: Aleksey Kashin <aleksey.kashin@xxxxxxxxx>
  • Date: Mon, 4 Mar 2013 14:23:28 +0500
  • Delivery-date: Mon, 04 Mar 2013 09:23:43 +0000
  • List-id: User and development list for XCP and XAPI <xen-api.lists.xen.org>

Hello,

I have server with XCP 1.6.
[root@xcp1 ~]# lsb_release -a
LSB Version:    :core-4.0-ia32:core-4.0-noarch
Distributor ID: XCP
Description:    XCP release 1.6.10-61809c
Release:        1.6.10-61809c
Codename:       n/a

I need to pass through USB-dongles inside VM.
I'm trying pass through all of my usb controllers in VM (Debian 6.0.7
squeeze, amd64).

For example:
1. I added "iommu=1 iommu_inclusive_mapping=1" in the
/boot/extlinux.conf and executed extlinux -U /boot. After that I
reboot my server
label xe-serial
  # XCP (Serial)
  kernel mboot.c32
  append /boot/xen.gz iommu=1 iommu_inclusive_mapping=1
com1=115200,8n1 console=com1,vga mem=1024G dom0_mem=752M,max:752M
watchdog_timeout=300 cpuid_mask_xsave_eax=0 lowmem_emergency_pool=1M
crashkernel=64M@32M dom0_max_vcpus=1-4 --- /boot/vmlinuz-2.6-xen
root=LABEL=root-myvmhqwu ro console=tty0 xencons=hvc console=hvc0 ---
/boot/initrd-2.6-xen.img

[root@xcp1 ~]# extlinux -U /boot/
/boot/ is device /dev/sda1

2. Here is USB controllers which I want to pass through in VM:
[root@xcp1 ~]# lspci -k | grep -A 3 USB
00:1a.0 USB controller: Intel Corporation C600/X79 series chipset USB2
Enhanced Host Controller #2 (rev 06)
        Subsystem: Super Micro Computer Inc Device 0636
        Kernel driver in use: pciback
        Kernel modules: ehci-hcd
--
00:1d.0 USB controller: Intel Corporation C600/X79 series chipset USB2
Enhanced Host Controller #1 (rev 06)
        Subsystem: Super Micro Computer Inc Device 0636
        Kernel driver in use: pciback
        Kernel modules: ehci-hcd

3. Shutdown the VM:
[root@xcp1 ~]# xe vm-shutdown uuid=9daf9418-01c9-20ba-6d71-340bc266b965

4. Assign usb controllers to the virtual machine executing the
following command:
[root@xcp1 ~]# xe vm-param-set
other-config:pci=0/0000:00:1a.0,0/0000:00:1d.0
uuid=9daf9418-01c9-20ba-6d71-340bc266b965

5. Show list of parameters my VM
[root@xcp1 ~]# xe vm-param-list
uuid=9daf9418-01c9-20ba-6d71-340bc266b965 | grep other-config
                  other-config (MRW): pci:
0/0000:00:1a.0,0/0000:00:1d.0; vgpu_pci: ; debian-release: squeeze;
install-methods: cdrom,http,ftp; install-arch: amd64; mac_seed:
d38a3d36-1130-656a-80dc-81e1eabbf6cc; base_template_name: Debian
Squeeze 6.0 (64-bit); install-repository: cdrom; linux_template: true

6. Start the VM
[root@xcp1 ~]# xe vm-start uuid=9daf9418-01c9-20ba-6d71-340bc266b965

7. During the boot VM, I see the following in the /var/log/kern.log on
the XCP host
Mar  4 08:49:46 xcp1 kernel: [11741.398620] block tda: sector-size:
512/512 capacity: 16777216
Mar  4 08:49:50 xcp1 kernel: [11744.668683] block tda: sector-size:
512/512 capacity: 16777216
Mar  4 08:49:50 xcp1 kernel: [11745.008156]
/local/domain/14/device/vif/0: Initialising
Mar  4 08:49:50 xcp1 kernel: [11745.008326]
/local/domain/14/device/vif/0: Initialising
Mar  4 08:49:50 xcp1 kernel: [11745.464074] device vif14.0 entered
promiscuous mode
Mar  4 08:49:51 xcp1 kernel: [11746.065018] pciback 0000:00:1d.0:
restoring config space at offset 0x4 (was 0x0, writing 0xdfc23000)
Mar  4 08:49:51 xcp1 kernel: [11746.085649] pciback: vpci:
0000:00:1d.0: assign to virtual slot 0
Mar  4 08:49:51 xcp1 kernel: [11746.525046] pciback 0000:00:1a.0:
restoring config space at offset 0x4 (was 0x0, writing 0xdfc24000)
Mar  4 08:50:03 xcp1 kernel: [11757.856859] blkback: event-channel 8
Mar  4 08:50:03 xcp1 kernel: [11757.861204] blkback: ring-ref 8
Mar  4 08:50:03 xcp1 kernel: [11757.861522] blkback: protocol 3 (x86_64-abi)
Mar  4 08:50:03 xcp1 kernel: [11757.869822]
/local/domain/14/device/vif/0: Connected
Mar  4 08:51:47 xcp1 kernel: [11862.184904] vif14.0: draining TX queue

8. After loading VM, I logged in the VM, and saw the following:
8.1 lspci
root@debian:~# lspci -k
root@debian:~#
8.2 dmesg
root@debian:~# dmesg | grep pci
[    0.064546] XENBUS: Device with no driver: device/pci/0

9. When I trying to connect USB dongle in USB port I can't see any USB
device inside my VM.

Anybody can help me why I can't see my usb device inside VM?

Thank you.

Regards, Aleksey Kashin

_______________________________________________
Xen-api mailing list
Xen-api@xxxxxxxxxxxxx
http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api


 


Rackspace

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