VF doesn't work in guest when not pinned with "addr="

Bug #830558 reported by Yongjie Ren
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

Environment:
------------
Host OS (ia32/ia32e/IA64):All
Guest OS (ia32/ia32e/IA64):ia32e
Guest OS Type (Linux/Windows):Linux (rhel6 and rhel5u5)
kvm.git Commit:ef7c782ea4a99fafb3d60dc8b8c057e0ef14f9f7
qemu-kvm Commit:44755ea36fee3f0b1093ef27404def8857602274
Host Kernel Version:3.0.0+
Hardware: Westmere-EP platform

Bug detailed description:
--------------------------
SR-IOV VF NIC doesn't work in guest when not pinned pci address with "addr=x05". Guest's dmesg shows "Failed to initialize MSI-X interrupts." If not pinned an address with "addr=0x05", the VF will be pinned to "0000:00:03.0" by default, and that doesn't work.
Normal vtd NIC assignment doesn't have this issue.
commit:fda19064e of qemu-kvm.git is good.
commit:44755ea36 of qemu-kvm.git is bad with this issue.
There maybe something wrong between the two commit.
Here's some dmesg info in the guest.
----dmesg in guest------
Intel(R) Virtual Function Network Driver - version 1.0.0-k0
Copyright (c) 2009 Intel Corporation.
igbvf 0000:00:03.0: setting latency timer to 64
igbvf 0000:00:03.0: Failed to initialize MSI-X interrupts.
igbvf 0000:00:03.0: Intel(R) 82576 Virtual Function
igbvf 0000:00:03.0: Address: da:66:bb:e6:1e:f4
igbvf 0000:00:03.0: MAC: 1
....
igbvf 0000:00:03.0: Unable to allocate interrupt, Error: -1
....

Reproduce steps:
----------------
1.pci-stub the a VF in 82576 NIC
2.create a guest: qemu-system-x86_64 -m 1024 -smp 2 -device pci-assign,host=01:10.0 -net none -hda /root/rhel6.qcow
(if using '-device pci-assign,host=01:10.0,addr=0x5, the VF will work)
3.check network in guest

Current result:
----------------
VF doesn't work in guest.

Expected result:
----------------
VF works well in guest.

affects: qemu → qemu-kvm
affects: qemu-kvm → qemu
Revision history for this message
Yongjie Ren (yongjie-ren) wrote :

this bug doesn't exist in the latest qemu tree.

Changed in qemu:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.