- bnc#801988 - virt-manager requires for vtemodule.so wrong on s390x
virt-manager.spec - bnc#801987 - virt-manager is not able to create new VM in qemu Updated virtman-vminstall.diff - fate##314135: Support PVSCSI on XEN and VirtioSCSI on KVM - Implement pass through block device - fate##313076: HBA passthrough for kvm virtman-git-scsi.diff virtman-git-scsi-lun.diff OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=111
This commit is contained in:
parent
b24018f586
commit
9bd84112f9
@ -1,3 +1,24 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 4 12:41:13 MST 2013 - carnold@suse.com
|
||||
|
||||
- bnc#801988 - virt-manager requires for vtemodule.so wrong on s390x
|
||||
virt-manager.spec
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 4 10:10:30 MST 2013 - carnold@suse.com
|
||||
|
||||
- bnc#801987 - virt-manager is not able to create new VM in qemu
|
||||
Updated virtman-vminstall.diff
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 31 15:32:00 MST 2013 - carnold@suse.com
|
||||
|
||||
- fate##314135: Support PVSCSI on XEN and VirtioSCSI on KVM -
|
||||
Implement pass through block device
|
||||
- fate##313076: HBA passthrough for kvm
|
||||
virtman-git-scsi.diff
|
||||
virtman-git-scsi-lun.diff
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 2 14:12:13 MST 2013 - carnold@novell.com
|
||||
|
||||
|
@ -32,6 +32,8 @@ Version: 0.9.4
|
||||
Release: 0
|
||||
Url: http://virt-manager.et.redhat.com
|
||||
Source0: virt-manager-%{version}.tar.bz2
|
||||
Patch0: virtman-git-scsi.diff
|
||||
Patch1: virtman-git-scsi-lun.diff
|
||||
Patch50: virtman-desktop.diff
|
||||
Patch51: virtman-vminstall.diff
|
||||
Patch52: virtman-cdrom.diff
|
||||
@ -65,10 +67,10 @@ Requires: gnome-keyring
|
||||
Requires: libvirt-python >= 0.7.0
|
||||
Requires: libxml2-python >= 2.6.23
|
||||
Requires: vm-install >= 0.5.6
|
||||
%ifarch x86_64
|
||||
Requires: vtemodule.so()(64bit)
|
||||
%else
|
||||
%ifarch %{ix86}
|
||||
Requires: vtemodule.so
|
||||
%else
|
||||
Requires: vtemodule.so()(64bit)
|
||||
%endif
|
||||
Requires: librsvg
|
||||
Requires: netcat-openbsd
|
||||
@ -99,6 +101,8 @@ Authors:
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch50 -p1
|
||||
%patch51 -p1
|
||||
%patch52 -p1
|
||||
|
@ -1,10 +1,10 @@
|
||||
Index: virt-manager-0.9.3/src/virtManager/addhardware.py
|
||||
Index: virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.3.orig/src/virtManager/addhardware.py
|
||||
+++ virt-manager-0.9.3/src/virtManager/addhardware.py
|
||||
@@ -540,6 +540,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
add_dev("sata", virtinst.VirtualDisk.DEVICE_DISK, "SATA disk")
|
||||
add_dev("virtio", virtinst.VirtualDisk.DEVICE_DISK, "Virtio disk")
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/addhardware.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
@@ -547,6 +547,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
add_dev("virtio-scsi", virtinst.VirtualDisk.DEVICE_LUN,
|
||||
_("Virtio SCSI lun"))
|
||||
if self.conn.is_xen():
|
||||
+ add_dev("xen", virtinst.VirtualDisk.DEVICE_CDROM, "Virtual disk (read only)")
|
||||
add_dev("xen", virtinst.VirtualDisk.DEVICE_DISK, "Virtual disk")
|
||||
|
@ -1,11 +1,12 @@
|
||||
Index: virt-manager-0.9.3/src/virtManager/addhardware.py
|
||||
Index: virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.3.orig/src/virtManager/addhardware.py
|
||||
+++ virt-manager-0.9.3/src/virtManager/addhardware.py
|
||||
@@ -1152,6 +1152,18 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
self._dev.get_xml_config()
|
||||
logging.debug("Adding device:\n" + self._dev.get_xml_config())
|
||||
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/addhardware.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
@@ -1163,6 +1163,19 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
if controller is not None:
|
||||
logging.debug("Adding controller:\n%s",
|
||||
self._dev.vmm_controller.get_xml_config())
|
||||
+
|
||||
+ # If vm is active, Try to hotplug the device and modify persistent
|
||||
+ # config in one go
|
||||
+ if self.vm.is_active():
|
||||
@ -21,10 +22,10 @@ Index: virt-manager-0.9.3/src/virtManager/addhardware.py
|
||||
# Hotplug device
|
||||
attach_err = False
|
||||
try:
|
||||
Index: virt-manager-0.9.3/src/virtManager/details.py
|
||||
Index: virt-manager-0.9.4/src/virtManager/details.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.3.orig/src/virtManager/details.py
|
||||
+++ virt-manager-0.9.3/src/virtManager/details.py
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/details.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/details.py
|
||||
@@ -2385,6 +2385,17 @@ class vmmDetails(vmmGObjectUI):
|
||||
text1=(_("Are you sure you want to remove this device?"))):
|
||||
return
|
||||
@ -43,10 +44,10 @@ Index: virt-manager-0.9.3/src/virtManager/details.py
|
||||
# Define the change
|
||||
try:
|
||||
self.vm.remove_device(dev_id_info)
|
||||
Index: virt-manager-0.9.3/src/virtManager/domain.py
|
||||
Index: virt-manager-0.9.4/src/virtManager/domain.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.3.orig/src/virtManager/domain.py
|
||||
+++ virt-manager-0.9.3/src/virtManager/domain.py
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/domain.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/domain.py
|
||||
@@ -757,6 +757,10 @@ class vmmDomain(vmmLibvirtObject):
|
||||
devxml = devobj.get_xml_config()
|
||||
self._backend.attachDevice(devxml)
|
||||
|
33
virtman-git-scsi-lun.diff
Normal file
33
virtman-git-scsi-lun.diff
Normal file
@ -0,0 +1,33 @@
|
||||
|
||||
Subject: Add virtio lun and virtio-scsi lun disk bus option
|
||||
From: Chen Hanxiao chenhanxiao@cn.fujitsu.com Tue Dec 11 17:06:38 2012 +0800
|
||||
Date: Fri Dec 14 19:21:35 2012 -0500:
|
||||
Git: 8b22d7a763acab05558f36818b8f890c4b428c1d
|
||||
|
||||
As a result of CVE-2011-4127, libvirt disabled generic SCSI
|
||||
commands passed through to the underlying disk by qemu
|
||||
from a guest to a virtio disk when device type is "disk"
|
||||
afer commit 177db087757e4adb02c211de56336a5991c8eb20.
|
||||
And libvirt introduce a new device type "lun"
|
||||
to allow SG_IO commands passing through.
|
||||
This patch allows VM admin to configure this via virt-manager.
|
||||
|
||||
Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
|
||||
|
||||
Index: virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/addhardware.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
@@ -540,8 +540,12 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
if self.vm.get_hv_type() == "kvm":
|
||||
add_dev("sata", virtinst.VirtualDisk.DEVICE_DISK, "SATA disk")
|
||||
add_dev("virtio", virtinst.VirtualDisk.DEVICE_DISK, "Virtio disk")
|
||||
+ add_dev("virtio", virtinst.VirtualDisk.DEVICE_LUN,
|
||||
+ _("Virtio lun"))
|
||||
add_dev("virtio-scsi", virtinst.VirtualDisk.DEVICE_DISK,
|
||||
_("Virtio SCSI disk"))
|
||||
+ add_dev("virtio-scsi", virtinst.VirtualDisk.DEVICE_LUN,
|
||||
+ _("Virtio SCSI lun"))
|
||||
if self.conn.is_xen():
|
||||
add_dev("xen", virtinst.VirtualDisk.DEVICE_DISK, "Virtual disk")
|
||||
|
103
virtman-git-scsi.diff
Normal file
103
virtman-git-scsi.diff
Normal file
@ -0,0 +1,103 @@
|
||||
|
||||
Subject: Add virtio-scsi disk bus option
|
||||
From: ChenHanxiao chenhanxiao@cn.fujitsu.com Fri Dec 7 18:21:38 2012 +0800
|
||||
Date: Sun Dec 9 14:28:42 2012 -0500:
|
||||
Git: ad1b24e885670d36b4ffd3a96434fd19dbe2ce98
|
||||
|
||||
This patch will add virtio-scsi bus option on "Add New Virtual
|
||||
Hardware" GUI page. It will support users to add a virtual disk
|
||||
using SCSI bus with a controller model virtio-scsi.
|
||||
If there is no SCSI controller existed, a new SCSI controller by
|
||||
model 'virtio-scsi' will be added automatically.
|
||||
|
||||
Signed-off-by: ChenHanxiao <chenhanxiao@cn.fujitsu.com>
|
||||
|
||||
(crobinso: add Chen to AUTHORS, some cosmetic tweaks)
|
||||
|
||||
Index: virt-manager-0.9.4/AUTHORS
|
||||
===================================================================
|
||||
--- virt-manager-0.9.4.orig/AUTHORS
|
||||
+++ virt-manager-0.9.4/AUTHORS
|
||||
@@ -81,6 +81,7 @@ Further patches have been submitted by:
|
||||
Nathan Bird <nathan-at-acceleration-dot-net>
|
||||
Guannan Ren <gren-at-redhat-dot-com>
|
||||
Eduardo Elias Ferreira <edusf-at-linux-dot-vnet-dot-ibm-dot-com>
|
||||
+ ChenHanxiao <chenhanxiao-at-cn-dot-fujitsu-dot-com>
|
||||
|
||||
<...send a patch & get your name here...>
|
||||
|
||||
Index: virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/addhardware.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/addhardware.py
|
||||
@@ -28,6 +28,7 @@ from virtinst import (VirtualCharDevice,
|
||||
VirtualVideoDevice, VirtualWatchdog,
|
||||
VirtualFilesystem, VirtualSmartCardDevice,
|
||||
VirtualRedirDevice)
|
||||
+from virtinst.VirtualController import VirtualControllerSCSI
|
||||
|
||||
import virtManager.util as util
|
||||
import virtManager.uihelpers as uihelpers
|
||||
@@ -539,6 +540,8 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
if self.vm.get_hv_type() == "kvm":
|
||||
add_dev("sata", virtinst.VirtualDisk.DEVICE_DISK, "SATA disk")
|
||||
add_dev("virtio", virtinst.VirtualDisk.DEVICE_DISK, "Virtio disk")
|
||||
+ add_dev("virtio-scsi", virtinst.VirtualDisk.DEVICE_DISK,
|
||||
+ _("Virtio SCSI disk"))
|
||||
if self.conn.is_xen():
|
||||
add_dev("xen", virtinst.VirtualDisk.DEVICE_DISK, "Virtual disk")
|
||||
|
||||
@@ -1151,9 +1154,15 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
self._dev.get_xml_config()
|
||||
logging.debug("Adding device:\n" + self._dev.get_xml_config())
|
||||
|
||||
+ controller = getattr(self._dev, "vmm_controller", None)
|
||||
+ if controller is not None:
|
||||
+ logging.debug("Adding controller:\n%s",
|
||||
+ self._dev.vmm_controller.get_xml_config())
|
||||
# Hotplug device
|
||||
attach_err = False
|
||||
try:
|
||||
+ if controller is not None:
|
||||
+ self.vm.attach_device(self._dev.vmm_controller)
|
||||
self.vm.attach_device(self._dev)
|
||||
except Exception, e:
|
||||
logging.debug("Device could not be hotplugged: %s", str(e))
|
||||
@@ -1176,6 +1185,8 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
|
||||
# Alter persistent config
|
||||
try:
|
||||
+ if controller is not None:
|
||||
+ self.vm.add_device(self._dev.vmm_controller)
|
||||
self.vm.add_device(self._dev)
|
||||
except Exception, e:
|
||||
self.err.show_err(_("Error adding device: %s" % str(e)))
|
||||
@@ -1221,6 +1232,10 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
bus, device = self.get_config_disk_target()
|
||||
cache = self.get_config_disk_cache()
|
||||
fmt = self.get_config_disk_format()
|
||||
+ controller_model = None
|
||||
+ if bus == "virtio-scsi":
|
||||
+ bus = "scsi"
|
||||
+ controller_model = "virtio-scsi"
|
||||
|
||||
# Make sure default pool is running
|
||||
if self.is_default_storage():
|
||||
@@ -1315,6 +1330,17 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
uihelpers.check_path_search_for_qemu(self.topwin,
|
||||
self.conn, disk.path)
|
||||
|
||||
+ # Add a SCSI controller with model virtio-scsi if needed
|
||||
+ disk.vmm_controller = None
|
||||
+ if (controller_model == "virtio-scsi") and (bus == "scsi"):
|
||||
+ controllers = self.vm.get_controller_devices()
|
||||
+ controller = VirtualControllerSCSI(conn = self.conn.vmm)
|
||||
+ controller.set_model(controller_model)
|
||||
+ disk.vmm_controller = controller
|
||||
+ for d in controllers:
|
||||
+ if controller_model == d.model:
|
||||
+ disk.vmm_controller = None
|
||||
+
|
||||
self._dev = disk
|
||||
return True
|
||||
|
@ -1,8 +1,16 @@
|
||||
Index: virt-manager-0.9.3/src/virtManager/engine.py
|
||||
Index: virt-manager-0.9.4/src/virtManager/engine.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.3.orig/src/virtManager/engine.py
|
||||
+++ virt-manager-0.9.3/src/virtManager/engine.py
|
||||
@@ -42,7 +42,6 @@ from virtManager.manager import vmmManag
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/engine.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/engine.py
|
||||
@@ -24,6 +24,7 @@ import gtk
|
||||
import logging
|
||||
import threading
|
||||
import os
|
||||
+import traceback
|
||||
|
||||
import libvirt
|
||||
import virtinst
|
||||
@@ -42,7 +43,6 @@ from virtManager.manager import vmmManag
|
||||
from virtManager.migrate import vmmMigrateDialog
|
||||
from virtManager.details import vmmDetails
|
||||
from virtManager.asyncjob import vmmAsyncJob
|
||||
@ -10,7 +18,7 @@ Index: virt-manager-0.9.3/src/virtManager/engine.py
|
||||
from virtManager.host import vmmHost
|
||||
from virtManager.error import vmmErrorDialog
|
||||
from virtManager.systray import vmmSystray
|
||||
@@ -671,11 +670,47 @@ class vmmEngine(vmmGObject):
|
||||
@@ -671,11 +671,47 @@ class vmmEngine(vmmGObject):
|
||||
self.windowCreate = obj
|
||||
return self.windowCreate
|
||||
|
||||
@ -62,10 +70,10 @@ Index: virt-manager-0.9.3/src/virtManager/engine.py
|
||||
|
||||
def _do_show_migrate(self, src, uri, uuid):
|
||||
try:
|
||||
Index: virt-manager-0.9.3/src/virtManager/create.py
|
||||
Index: virt-manager-0.9.4/src/virtManager/create.py
|
||||
===================================================================
|
||||
--- virt-manager-0.9.3.orig/src/virtManager/create.py
|
||||
+++ virt-manager-0.9.3/src/virtManager/create.py
|
||||
--- virt-manager-0.9.4.orig/src/virtManager/create.py
|
||||
+++ virt-manager-0.9.4/src/virtManager/create.py
|
||||
@@ -176,6 +176,7 @@ class vmmCreate(vmmGObjectUI):
|
||||
|
||||
def close(self, ignore1=None, ignore2=None):
|
||||
|
Loading…
Reference in New Issue
Block a user