[dts] [PATCH] framework: add crypto option support

Xinfeng Zhao xinfengx.zhao at intel.com
Fri Mar 8 00:47:36 CET 2019


Signed-off-by: Xinfeng Zhao <xinfengx.zhao at intel.com>
---
 framework/qemu_kvm.py | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/framework/qemu_kvm.py b/framework/qemu_kvm.py
index 279b73d..c3e8f37 100644
--- a/framework/qemu_kvm.py
+++ b/framework/qemu_kvm.py
@@ -1165,6 +1165,30 @@ class QEMUKvm(VirtBase):
             cmd = options['cmd']
         self.__add_boot_line(cmd)
 
+    def add_vm_crypto(self, **options):
+        """
+        Add VM crypto options
+        """
+        separator = ' '
+
+        if 'enable' in options.keys() and options['enable'] == 'yes':
+            if 'opt_num' in options.keys():
+                opt_num = int(options['opt_num'])
+            else:
+                opt_num = 1
+
+            for id in range(opt_num):
+                cryptodev_id = '%(vm_name)s_crypto%(id)s' % {'vm_name': self.vm_name, 'id': id}
+                cryptodev_soch_path = '/tmp/%(vm_name)s_crypto%(id)s.sock' % {'vm_name': self.vm_name, 'id': id}
+
+                crypto_boot_block = '-chardev socket,path=%(SOCK_PATH)s,id=%(ID)s' + separator +\
+                                    '-object cryptodev-vhost-user,id=cryptodev%(id)s,chardev=%(ID)s' + separator +\
+                                    '-device virtio-crypto-pci,id=crypto%(id)s,cryptodev=cryptodev%(id)s'
+                crypto_boot_line = crypto_boot_block % {'SOCK_PATH': cryptodev_soch_path,
+                                                        'ID': cryptodev_id,
+                                                        'id': id}
+                self.__add_boot_line(crypto_boot_line)
+
     def _check_vm_status(self):
         """
         Check and restart QGA if not ready, wait for network ready
-- 
2.7.4



More information about the dts mailing list