VF doesn't work in guest when not pinned with "addr="
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Environment:
------------
Host OS (ia32/ia32e/
Guest OS (ia32/ia32e/
Guest OS Type (Linux/
kvm.git Commit:
qemu-kvm Commit:
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,
(if using '-device pci-assign,
3.check network in guest
Current result:
----------------
VF doesn't work in guest.
Expected result:
----------------
VF works well in guest.
this bug doesn't exist in the latest qemu tree.