Hello all i am trying to install a video capture device on a KVM based virtual machine, my hardware supports visualization and i have managed to get a KVM of Ubuntu 10.04 LTS running. I have also managed to get the video capture software to install and work properly inside the KVM. However there is no Video and i get the dreaded "No valid local video devices were detected" which probably means that KVM is not picking up the hardware.
The card is a 16 port PCI-X card installed into my Dell T110 II on which the card is listed in lspci
04:05.0 Multimedia video controller: Bluecherry BC-H16480A 16 port H.264 video and audio encoder / decoder
I do not see the card detected on the virtual machine
lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 20)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03)
I have found this page on the KVM site but have not put any real effort into it yet, has anyone managed to get a virtual machine working with pci pass through???
http://www.linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM
Before i go ahead with this i was wondering if Proxmox 2 supports this out of the box or if i have to add kernel options in grub and the like.
I have found a post here http://forum.proxmox.com/threads/970-Proxmox-1.1-KVM-83-and-PCI-Passthrough and have tryed adding some lines to my /etc/pve/nodes/sun/qemu-server/104.conf and did a stop and start on the VM each time. The first to lines commented out rendered the VM unstartable and gave the start failed command below.
Using the last line "hostpci 04:05.0" allowed the VM to start without error, but I still do not see the PCI device listed in my lspci on the VM hope i am just missing something simple. Again do i need to edit grub?
#args: -pcidevice host=04:05.0 -cpu host
#args: -pcidevice host=04:05.0
hostpci 04:05.0
start failed: command '/usr/bin/kvm -id 104 -chardev socket,id=monitor,path=/var/run/qemu-server/104.mon,server,nowait -mon chardev=monitor,mode=readline -vnc unix:/var/run/qemu-server/104.vnc,x509,password -pidfile /var/run/qemu-server/104.pid -daemonize -readconfig /usr/share/qemu-server/pve-usb.cfg -device usb-tablet,bus=ehci.0,port=6 -name bluccherry2 -smp sockets=1,cores=1 -nodefaults -boot menu=on,order=cdn -vga cirrus -tdf -k en-us -drive file=/var/lib/vz/iso/turnkey-core-11.2-lucid-x86.iso,if=none,id=drive-ide2,media=cdrom,aio=native -device ide-drive,bus=ide.1,unit=0,drive=drive-ide2,id=device-ide2 -drive file=/dev/vg1/vm-104-disk-1,if=none,id=drive-ide0,aio=native,boot=on -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0,id=device-ide0 -m 512 -netdev type=tap,id=net0,ifname=tap104i0,script=/var/lib/qemu-server/pve-bridge -device rtl8139,romfile=,mac=22:BD:58:6A:16:79,netdev=net0,bus=pci.0,addr=0x12 -cpuunits 1000 -pcidevice host=04:05.0' failed: exit code 1 (500)
The card is a 16 port PCI-X card installed into my Dell T110 II on which the card is listed in lspci
04:05.0 Multimedia video controller: Bluecherry BC-H16480A 16 port H.264 video and audio encoder / decoder
I do not see the card detected on the virtual machine
lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 20)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03)
I have found this page on the KVM site but have not put any real effort into it yet, has anyone managed to get a virtual machine working with pci pass through???
http://www.linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM
Before i go ahead with this i was wondering if Proxmox 2 supports this out of the box or if i have to add kernel options in grub and the like.
I have found a post here http://forum.proxmox.com/threads/970-Proxmox-1.1-KVM-83-and-PCI-Passthrough and have tryed adding some lines to my /etc/pve/nodes/sun/qemu-server/104.conf and did a stop and start on the VM each time. The first to lines commented out rendered the VM unstartable and gave the start failed command below.
Using the last line "hostpci 04:05.0" allowed the VM to start without error, but I still do not see the PCI device listed in my lspci on the VM hope i am just missing something simple. Again do i need to edit grub?
#args: -pcidevice host=04:05.0 -cpu host
#args: -pcidevice host=04:05.0
hostpci 04:05.0
start failed: command '/usr/bin/kvm -id 104 -chardev socket,id=monitor,path=/var/run/qemu-server/104.mon,server,nowait -mon chardev=monitor,mode=readline -vnc unix:/var/run/qemu-server/104.vnc,x509,password -pidfile /var/run/qemu-server/104.pid -daemonize -readconfig /usr/share/qemu-server/pve-usb.cfg -device usb-tablet,bus=ehci.0,port=6 -name bluccherry2 -smp sockets=1,cores=1 -nodefaults -boot menu=on,order=cdn -vga cirrus -tdf -k en-us -drive file=/var/lib/vz/iso/turnkey-core-11.2-lucid-x86.iso,if=none,id=drive-ide2,media=cdrom,aio=native -device ide-drive,bus=ide.1,unit=0,drive=drive-ide2,id=device-ide2 -drive file=/dev/vg1/vm-104-disk-1,if=none,id=drive-ide0,aio=native,boot=on -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0,id=device-ide0 -m 512 -netdev type=tap,id=net0,ifname=tap104i0,script=/var/lib/qemu-server/pve-bridge -device rtl8139,romfile=,mac=22:BD:58:6A:16:79,netdev=net0,bus=pci.0,addr=0x12 -cpuunits 1000 -pcidevice host=04:05.0' failed: exit code 1 (500)
Last edited: