Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I am running KVM on Ubuntu 11.10 on an Intel-based machine, with G33 chipset and Q6600 processor (Supports VT-d).

I am having problems when I want to add my PCI TV Card to my virtual machine.

I get this error "No IOMMU found. Unable to assign device "hostdev0"".

Can anyone guide me how to set this up correctly, so my PCI TV Card is passed through to the virtual machine?

I have added this to my configuration file:

   <hostdev mode='subsystem' type='pci' managed='yes'>
     <source>
      <address bus='0x03' slot='0x00' function='0x00'/>
     </source>
   </hostdev>

And this is the device information:

<device>
  <name>pci_0000_03_00_0</name>
  <parent>pci_0000_00_1c_1</parent>
  <driver>
    <name>cx23885</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>3</bus>
    <slot>0</slot>
    <function>0</function>
    <product id='0x8852'>CX23885 PCI Video and Audio Decoder</product>
    <vendor id='0x14f1'>Conexant Systems, Inc.</vendor>
  </capability>
</device>

Thanks for your help ;-)

share|improve this question
1  
To enable kernel support to IOMMU you can check this guide: [goo.gl/t9Ugd]. But don't forget: if the hardware don't support IOMMU it will still not work... –  Salem Apr 5 '12 at 13:20
    
Thanks. Everything seems to be configured correctly, but the hardware probably does not support IOMMU :/ But thanks anyway. –  Sylvester78 Apr 5 '12 at 17:28

1 Answer 1

up vote 2 down vote accepted

Intel has made a mess of this as the Vt-d functionality can actually live on the chipset.

http://www.intel.com/assets/pdf/prodbrief/317312.pdf

The Q33 does not have it, but the Q35 does. The criteria for where Vt-d support lives is relative to where your memory controller is. With your CPU, it's not on die, so you have an opportunity to add Vt-d with a chipset upgrade. Chips like the Nehalam however, have integrated memory controllers, so all your memory related features are locked up in the CPU.

http://www.intel.com/Assets/PDF/datasheet/316966.pdf

1.3.12 Intel® Virtualization Technology for Directed I/O (Intel® VT-d) (Intel® 82Q35 GMCH Only) Intel® Virtualization Technology for Directed I/O comprises technology components to support virtualization of platforms based on Intel architecture microprocessors. This document describes the chipset hardware components supporting I/O virtualization that are in the (G)MCH. Intel® VT-d is only supported by the Intel® Q35 Express chipset.

Maybe you can find a deal on a Q35 though I'm guessing it'll be more cost effective in the long run to upgrade both board and chip with an on die memory controller.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.