-# Copyright (c) 2018 Cisco and/or its affiliates.
+# Copyright (c) 2019 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
self._ssh = SSH()
self._ssh.connect(node)
self._vm_info['host'] = node['host']
-
+ if node['port'] != 22:
+ self._vm_info['host_port'] = node['port']
+ self._vm_info['host_username'] = node['username']
+ self._vm_info['host_password'] = node['password']
arch = Topology.get_node_arch(node)
self._qemu_opt['qemu_bin'] = 'qemu-system-{arch}'.format(arch=arch)
format(qemu_id=self._qemu_id, vhost_id=self._vhost_id))\
if mac is None else mac
- queue_size = (',rx_queue_size={queue_size},tx_queue_size={queue_size}'.
+ queue_size = ('rx_queue_size={queue_size},tx_queue_size={queue_size}'.
format(queue_size=self._qemu_opt.get('queue_size')))\
if self._qemu_opt.get('queue_size') else ''
+ vector_size = ('vectors={vectors}'.
+ format(vectors=2*self._qemu_opt.get('queue_count')+2))\
+ if self._qemu_opt.get('queue_count') else ''
# Create Virtio network device.
device = (' -device virtio-net-pci,netdev=vhost{vhost_id},mac={mac},'
- 'mq=on,csum=off,gso=off,guest_tso4=off,guest_tso6=off,'
- 'guest_ecn=off,mrg_rxbuf={mbuf}{queue_size}'.
+ 'mq=on,{vector_size},csum=off,gso=off,guest_tso4=off,'
+ 'guest_tso6=off,guest_ecn=off,mrg_rxbuf={mbuf},{queue_size}'.
format(vhost_id=self._vhost_id, mac=mac,
mbuf='on,host_mtu=9200' if jumbo_frames else 'off',
- queue_size=queue_size))
+ queue_size=queue_size, vector_size=vector_size))
self._qemu_opt['options'] += device
# Add interface MAC and socket to the node dict
if_data = {'mac_address': mac, 'socket': socket}