File virtinst-set-cache-mode-unsafe-for-install.patch of Package virt-manager
Set cache mode for target installation disk to unsafe for better
performance.
Index: virt-manager-3.3.0/virtinst/install/installer.py
===================================================================
--- virt-manager-3.3.0.orig/virtinst/install/installer.py
+++ virt-manager-3.3.0/virtinst/install/installer.py
@@ -567,16 +567,29 @@ class Installer(object):
def _build_postboot_xml(self, final_xml, meter):
initial_guest = Guest(self.conn, parsexml=final_xml)
+ # At install time set the target disk to 'unsafe' for
+ # better performance if the target is not a block device
+ saved_cache = "None"
+ if initial_guest.devices.disk:
+ target_disk = initial_guest.devices.disk[0]
+ saved_cache = target_disk.driver_cache
+ if target_disk.type != DeviceDisk.TYPE_BLOCK and target_disk.driver_io != "native":
+ target_disk.driver_cache = DeviceDisk.CACHE_MODE_UNSAFE
+
self._alter_bootconfig(initial_guest)
self._alter_install_resources(initial_guest, meter)
if self.has_cloudinit():
initial_guest.set_smbios_serial_cloudinit()
+ install_xml = initial_guest.get_xml()
+ if saved_cache != "None":
+ target_disk.driver_cache = saved_cache
+
final_guest = Guest(self.conn, parsexml=final_xml)
self._remove_install_cdrom_media(final_guest)
self._remove_unattended_install_cdrom_device(final_guest)
- return initial_guest.get_xml(), final_guest.get_xml()
+ return install_xml, final_guest.get_xml()
def _build_xml(self, guest, meter):
initial_xml = None