From Fedora Project Wiki

(add bug about DMAR being disabled by default)
(add comments/workarounds on each of the known bugs)
Line 6: Line 6:


* [https://bugzilla.redhat.com/499259 svirt denials breaks KVM PCI device assignment]
* [https://bugzilla.redhat.com/499259 svirt denials breaks KVM PCI device assignment]
: Until this is fixed, all but the nodedev ops test case requires you to run SELinux in permissive mode
* [https://bugzilla.redhat.com/499261 KVM PCI device assignment fails with "assigned_dev_register_regions: Error: Couldn't mmap 0xffa40000!"]
* [https://bugzilla.redhat.com/499261 KVM PCI device assignment fails with "assigned_dev_register_regions: Error: Couldn't mmap 0xffa40000!"]
: If you hit this, try booting the host with <code>iomem=relaxed</code>
* [https://bugzilla.redhat.com/499352 Re-enable CONFIG_DMAR_DEFAULT_ON]
* [https://bugzilla.redhat.com/499352 Re-enable CONFIG_DMAR_DEFAULT_ON]
: You will need to boot the host with intel_iommu=on until this is fixed
* [https://bugzilla.redhat.com/499267 Assigning a PCI device using virt-manager/virt-install fails]
* [https://bugzilla.redhat.com/499267 Assigning a PCI device using virt-manager/virt-install fails]
: There is no known workaround for this; this affects the virt-manager and virt-install test cases


== Prerequisites ==
== Prerequisites ==

Revision as of 10:38, 6 May 2009

See Test_Day:2009-05-07_Virtualization.

This test area is concerned with testing the KVM PCI Device Assignment feature added in Fedora 11.

Known bugs include:

Until this is fixed, all but the nodedev ops test case requires you to run SELinux in permissive mode
If you hit this, try booting the host with iomem=relaxed
You will need to boot the host with intel_iommu=on until this is fixed
There is no known workaround for this; this affects the virt-manager and virt-install test cases

Prerequisites

In order to test KVM PCI device assignment, you need a host machine which has Intel VT-d or AMD IOMMU support.

Please upload your smolt profile using smoltSendProfile and add its URL to the table below.

Also, it would be useful to post your PCI bus topology - e.g. post the output of lspci -t -v to Fedora's pastebin.

Tests

The first thing you need to do is choose which PCI device on your KVM host that you will use for testing. Probably the most obvious to test with is a NIC. You'll need the device's nodedev name, and you can find this with e.g.

  $> for iii in $(virsh nodedev-list --cap net); do virsh nodedev-dumpxml $iii | grep parent; done
  <parent>pci_8086_10bd</parent>
  <parent>computer</parent>
  $> virsh nodedev-dumpxml pci_8086_10bd
  <device>
    <name>pci_8086_10bd</name>
    <parent>computer</parent>
    <capability type='pci'>
      <domain>0</domain>
      <bus>0</bus>
      <slot>25</slot>
      <function>0</function>
      <product id='0x10bd'>82566DM-2 Gigabit Network Connection</product>
      <vendor id='0x8086'>Intel Corporation</vendor>
    </capability>
  </device>

Follow each of these test cases:

  1. libvirt nodedev operations
  2. assigning a device using libvirt
  3. assigning a device using virt-manager
  4. virt-install --host-device

Results

If you have problems with any of the tests, file a bug report in bugzilla.

Once you have completed the tests, add your results to the table below.

User Smolt lspci Nodedev Ops libvirt virt-manager virt-install Comments
Mark McLoughlin smolt lspci