@@ -282,9 +282,11 @@ class VM:
def add_net(help, vlan, mode, ifname=None, script=None,
downscript=None, tftp=None, bootfile=None, hostfwd=[],
- netdev_id=None):
+ netdev_id=None, vhost=False):
if has_option(help, "netdev"):
cmd = " -netdev %s,id=%s" % (mode, netdev_id)
+ if vhost:
+ cmd +=",vhost=on"
else:
cmd = " -net %s,vlan=%d" % (mode, vlan)
if mode == "tap":
@@ -448,7 +450,8 @@ class VM:
self.get_ifname(vlan),
script, downscript, tftp,
nic_params.get("bootp"), redirs,
- self.netdev_id[vlan])
+ self.netdev_id[vlan],
+ nic_params.get("vhost")=="yes")
# Proceed to next NIC
vlan += 1
@@ -699,9 +699,11 @@ variants:
supported_features = "tx rx sg tso gso gro lro"
- virtio_net:
nic_model = virtio
- # you can add advanced attributes on nic_extra_params
- # such as mrg_rxbuf
+ # You can add advanced attributes on nic_extra_params such as mrg_rxbuf
#nic_extra_params =
+ # You can set vhost = yes to enable the vhost kernel backend
+ # (This only works if nic_mode=tap)
+ vhost = no
jumbo:
mtu = 65520
ethtool: