Bug 784987

Summary: livirt does not accept ne2k_isa whereas qemu supports
Product: [Community] Virtualization Tools Reporter: Bhasker C V <bhasker>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED DEFERRED QA Contact:
Severity: medium Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: crobinso, wtogami, xen-maint
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-23 20:45:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Bhasker C V 2012-01-26 20:41:06 UTC
Description of problem:


Version-Release number of selected component (if applicable):
$ virsh --version
0.9.1


How reproducible:



Steps to Reproduce:
1. Add any virtual machine and edit the xml 
2. Add these
    <interface type='bridge'>
      <mac address='52:54:00:04:51:a7'/>
      <source bridge='virt'/>
      <model type='ne2k_isa'/>
    </interface>

3. Libvirt adds automatically 
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>


Actual results:
 Domain fails to start 

char device redirected to /dev/pts/4
qemu-system-x86_64.bin: -device ne2k_isa,netdev=hostnet0,id=net0,mac=52:54:00:04:51:a7,bus=pci.0,addr=0x3: Device 'ne2k_isa' can't go on a PCI bus

Expected results:
it must work 

Additional info:

Comment 1 Warren Togami 2014-04-30 01:34:34 UTC
http://libvirt.org/drvqemu.html#qemucommand
You can add arbitrary qemu command line parameters with this.  You need to edit the top line of your XML in addition to adding a <qemu:commandline> section.

Comment 2 Cole Robinson 2016-03-23 20:45:11 UTC
Libvirt doesn't have proper ISA bus support and given that it's not really relevant for modern OS it's unlikely to happen anytime soon, someone will have to show up and provide patches