How to list qemu device options using command line in KVM environment..

[Back to blogging after busy season of ….]

Any way, its a very common query on qemu/kvm and most of the people dont know .. It is really useful to know which options are available with some of the devices and qemu-kvm binary…

Here is an example on the same: You have to replace your qemu binary path accordingly

First of all if you want to list the devices available for the qemu binary, please list it using :

[root@node ~]# /usr/bin/qemu-kvm -device ? name “pci-bridge”, bus PCI name “virtio-scsi-pci”, bus PCI, alias “virtio-scsi” name “virtio-balloon-pci”, bus PCI name “virtio-serial-pci”, bus PCI, alias “virtio-serial” name “virtio-net-pci”, bus PCI name “virtio-blk-pci”, bus PCI, alias “virtio-blk” name “i82562”, bus PCI

*****

If you want to list specific options of a particular device, view it by invoking in similar way as below.. Here I used “virtio-net-pci” as an example..

[root@node ~]# /usr/bin/qemu-kvm -device virtio-net-pci,?

virtio-net-pci.ioeventfd=on/off virtio-net-pci.__com_redhat_macvtap_compat=on/off virtio-net-pci.x-__com_redhat_rhel620_compat=on/off virtio-net-pci.vectors=uint32 virtio-net-pci.indirect_desc=on/off virtio-net-pci.event_idx=on/off virtio-net-pci.csum=on/off virtio-net-pci.guest_csum=on/off virtio-net-pci.gso=on/off virtio-net-pci.guest_tso4=on/off virtio-net-pci.guest_tso6=on/off virtio-net-pci.guest_ecn=on/off virtio-net-pci.guest_ufo=on/off virtio-net-pci.host_tso4=on/off virtio-net-pci.host_tso6=on/off virtio-net-pci.host_ecn=on/off virtio-net-pci.host_ufo=on/off virtio-net-pci.mrg_rxbuf=on/off virtio-net-pci.status=on/off virtio-net-pci.ctrl_vq=on/off virtio-net-pci.ctrl_rx=on/off virtio-net-pci.ctrl_vlan=on/off virtio-net-pci.ctrl_rx_extra=on/off virtio-net-pci.ctrl_guest_offloads=on/off virtio-net-pci.ctrl_mac_addr=on/off virtio-net-pci.mac=macaddr virtio-net-pci.vlan=vlan virtio-net-pci.netdev=netdev virtio-net-pci.bootindex=int32 virtio-net-pci.x-txtimer=uint32 virtio-net-pci.x-txburst=int32 virtio-net-pci.tx=string virtio-net-pci.addr=pci-devfn virtio-net-pci.romfile=string virtio-net-pci.rombar=uint32 virtio-net-pci.multifunction=on/off

The same way you can list available CPUs and Machine types

-M ?
-cpu ?

For ex:

[root@node ~]# /usr/bin/qemu-kvm -cpu ? x86 Opteron_G5 AMD Opteron 63xx class CPU x86 Opteron_G4 AMD Opteron 62xx class CPU x86 Opteron_G3 AMD Opteron 23xx (Gen 3 Class Opteron) x86 Opteron_G2 AMD Opteron 22xx (Gen 2 Class Opt ..