Bug 626511

Summary: pass through fails with KVM using Neterion Inc's X3100 Series 10GbE PCIe I/O in Multi function mode.
Product: Red Hat Enterprise Linux 5 Reporter: sivakumar <sivakumar.subramani>
Component: kvmAssignee: Alex Williamson <alex.williamson>
Status: CLOSED WONTFIX QA Contact: Virtualization Bugs <virt-bugs>
Severity: urgent Docs Contact:
Priority: high    
Version: 5.6CC: dallan, ddutile, eblake, jdenemar, juzhang, ltroan, mkenneth, tburke, virt-maint, xen-maint, ykaul
Target Milestone: rc   
Target Release: 5.7   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-07-27 16:40:36 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 580948, 618260, 624790, 635660    

Description sivakumar 2010-08-23 17:35:40 UTC
Description of problem:
pass through fails with KVM using Neterion Inc's X3100 Series 10GbE PCIe I/O
Virtualized Server Adapter in Multifunction mode.

Version-Release number of selected component (if applicable):
Redhat 5.5 

Steps to Reproduce:
1. Install Redhat 5.5 as VM on a host system which also has redhat 5.5
2. Shutdown VM.
2. Export one of the function of Neterion Inc's X3100 Series 10GbE PCIe I/O
Virtualized Server Adapter in Multifunction mode as pass through to the VM.
3. boot the VM.
  
Actual results:
1) I am able to see the exported device on VM through lspci. When do insmod, I am getting following error message in the log file of vm.
[root@Jelly ~]# tail -f /var/log/libvirt/qemu/redhat55.log
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)

2) Then when I try to bring up the interface, the VM shutdown itself.




Additional info:

Comment 1 Jiri Denemark 2010-10-14 09:59:24 UTC
We have fixed some bugs in PCI assignment code in libvirt recently, could you test if using the latest development packages makes this any better? You can find the libvirt packages at http://people.redhat.com/jdenemar/libvirt/

Comment 6 Larry Troan 2010-11-21 20:55:25 UTC
Unresolved issues with this NIC upstream and in RHEL6 per Enigneering.
Too late for 5.6. Pushing to 5.7.

Comment 7 sivakumar 2010-12-06 21:21:49 UTC
I verified that the issue is still happening on redhat 5.6 snapshot3. The details as follow:

char device redirected to /dev/pts/1
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin HOME=/ QEMU_AUDIO_DRV=none /usr/libe
xec/qemu-kvm -S -M rhel5.4.0 -m 512 -smp 1,sockets=1,cores=1,threads=1 -name red
hat55 -uuid c89825a4-1744-d3ac-3ed8-453822c87d16 -monitor unix:/var/lib/libvirt/
qemu/redhat55.monitor,server,nowait -no-kvm-pit-reinjection -boot c -drive file=
/var/lib/libvirt/images/redhat55-1.img,if=virtio,boot=on,format=raw,cache=none -
drive if=ide,media=cdrom,bus=1,unit=0,readonly=on,format=raw -net nic,macaddr=54
:52:00:67:b9:ad,vlan=0,model=virtio -net tap,fd=18,vlan=0 -serial pty -parallel
none -usb -vnc 127.0.0.1:0 -k en-us -vga cirrus -pcidevice host=02:00.2 -balloon
 virtio
char device redirected to /dev/pts/1
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)
BUG: kvm_destroy_phys_mem: invalid parameters (slot=-1)

The libvirt version :
-----------------------
[root@Nemo qemu]# rpm -qa | grep libvirt
libvirt-python-0.8.2-13.el5
libvirt-0.8.2-13.el5
libvirt-0.8.2-13.el5
[root@Nemo qemu]#

Comment 14 Alex Williamson 2011-07-27 16:40:36 UTC
The changes required to support this are too intrusive for RHEL5.  This has been fixed and does now work in RHEL6.1.