virt-install: introduce vhostuser interface

Add support to interface type 'vhostuser' by:

--network vhostuser,source_type=unix,source_path=/tmp/vhost1.sock,source_mode=server,model=virtio

Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com>
This commit is contained in:
Chen Hanxiao 2016-08-27 13:41:38 +08:00 committed by Cole Robinson
parent df4babcd2b
commit c859d39428
4 changed files with 14 additions and 3 deletions

View File

@ -214,6 +214,11 @@
<model type="virtio"/> <model type="virtio"/>
<address type="spapr-vio" reg="0x500"/> <address type="spapr-vio" reg="0x500"/>
</interface> </interface>
<interface type="vhostuser">
<source type="unix" path="/tmp/vhost1.sock" mode="server"/>
<mac address="00:11:22:33:44:55"/>
<model type="virtio"/>
</interface>
<input type="keyboard" bus="usb"/> <input type="keyboard" bus="usb"/>
<input type="tablet" bus="usb"/> <input type="tablet" bus="usb"/>
<graphics type="sdl" display=":3.4" xauth="/tmp/.Xauthority"/> <graphics type="sdl" display=":3.4" xauth="/tmp/.Xauthority"/>

View File

@ -473,6 +473,7 @@ c.add_compare(""" \
--network bridge=ovsbr,virtualport_type=openvswitch,virtualport_profileid=demo,virtualport_interfaceid=09b11c53-8b5c-4eeb-8f00-d84eaa0aaa3b,link_state=yes \ --network bridge=ovsbr,virtualport_type=openvswitch,virtualport_profileid=demo,virtualport_interfaceid=09b11c53-8b5c-4eeb-8f00-d84eaa0aaa3b,link_state=yes \
--network type=direct,source=eth5,source_mode=vepa,target=mytap12,virtualport_type=802.1Qbg,virtualport_managerid=12,virtualport_typeid=1193046,virtualport_typeidversion=1,virtualport_instanceid=09b11c53-8b5c-4eeb-8f00-d84eaa0aaa3b,boot_order=1 \ --network type=direct,source=eth5,source_mode=vepa,target=mytap12,virtualport_type=802.1Qbg,virtualport_managerid=12,virtualport_typeid=1193046,virtualport_typeidversion=1,virtualport_instanceid=09b11c53-8b5c-4eeb-8f00-d84eaa0aaa3b,boot_order=1 \
--network user,model=virtio,address.type=spapr-vio,address.reg=0x500 \ --network user,model=virtio,address.type=spapr-vio,address.reg=0x500 \
--network vhostuser,source_type=unix,source_path=/tmp/vhost1.sock,source_mode=server,model=virtio \
\ \
--graphics sdl \ --graphics sdl \
--graphics spice,keymap=none \ --graphics spice,keymap=none \

View File

@ -1992,6 +1992,8 @@ _add_device_address_args(ParserNetwork)
ParserNetwork.add_arg("type", "type", cb=ParserNetwork.set_type_cb) ParserNetwork.add_arg("type", "type", cb=ParserNetwork.set_type_cb)
ParserNetwork.add_arg("source", "source") ParserNetwork.add_arg("source", "source")
ParserNetwork.add_arg("source_mode", "source_mode") ParserNetwork.add_arg("source_mode", "source_mode")
ParserNetwork.add_arg("source_type", "source_type")
ParserNetwork.add_arg("source_path", "source_path")
ParserNetwork.add_arg("portgroup", "portgroup") ParserNetwork.add_arg("portgroup", "portgroup")
ParserNetwork.add_arg("target_dev", "target") ParserNetwork.add_arg("target_dev", "target")
ParserNetwork.add_arg("model", "model") ParserNetwork.add_arg("model", "model")

View File

@ -132,6 +132,7 @@ class VirtualNetworkInterface(VirtualDevice):
TYPE_BRIDGE = "bridge" TYPE_BRIDGE = "bridge"
TYPE_VIRTUAL = "network" TYPE_VIRTUAL = "network"
TYPE_USER = "user" TYPE_USER = "user"
TYPE_VHOSTUSER = "vhostuser"
TYPE_ETHERNET = "ethernet" TYPE_ETHERNET = "ethernet"
TYPE_DIRECT = "direct" TYPE_DIRECT = "direct"
network_types = [TYPE_BRIDGE, TYPE_VIRTUAL, TYPE_USER, TYPE_ETHERNET, network_types = [TYPE_BRIDGE, TYPE_VIRTUAL, TYPE_USER, TYPE_ETHERNET,
@ -272,9 +273,9 @@ class VirtualNetworkInterface(VirtualDevice):
################## ##################
_XML_PROP_ORDER = [ _XML_PROP_ORDER = [
"_bridge", "_network", "_source_dev", "source_mode", "portgroup", "_bridge", "_network", "_source_dev", "source_type", "source_path",
"macaddr", "target_dev", "model", "virtualport", "source_mode", "portgroup", "macaddr", "target_dev", "model",
"filterref", "rom_bar", "rom_file"] "virtualport", "filterref", "rom_bar", "rom_file"]
_bridge = XMLProperty("./source/@bridge", default_cb=_get_default_bridge) _bridge = XMLProperty("./source/@bridge", default_cb=_get_default_bridge)
_network = XMLProperty("./source/@network") _network = XMLProperty("./source/@network")
@ -288,6 +289,8 @@ class VirtualNetworkInterface(VirtualDevice):
set_converter=_validate_mac, set_converter=_validate_mac,
default_cb=_get_default_mac) default_cb=_get_default_mac)
source_type = XMLProperty("./source/@type")
source_path = XMLProperty("./source/@path")
source_mode = XMLProperty("./source/@mode", source_mode = XMLProperty("./source/@mode",
default_cb=_default_source_mode) default_cb=_default_source_mode)
portgroup = XMLProperty("./source/@portgroup") portgroup = XMLProperty("./source/@portgroup")