- bnc#636231 - XEN: Unable to disconnect/remove CDROM drive from VM

xend-devid-or-name.patch

OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=77
This commit is contained in:
Charles Arnold 2010-10-20 21:11:17 +00:00 committed by Git OBS Bridge
parent 08a77ed8c4
commit 27856be8a4
8 changed files with 34 additions and 10 deletions

View File

@ -2,7 +2,7 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -2917,7 +2917,7 @@ class XendDomainInfo:
@@ -2920,7 +2920,7 @@ class XendDomainInfo:
self.guest_bitsize = self.image.getBitSize()
# Make sure there's enough RAM available for the domain

View File

@ -2,7 +2,7 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -3133,6 +3133,11 @@ class XendDomainInfo:
@@ -3136,6 +3136,11 @@ class XendDomainInfo:
self._cleanup_phantom_devs(paths)
self._cleanupVm()

View File

@ -2,13 +2,13 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -1310,8 +1310,15 @@ class XendDomainInfo:
@@ -1313,8 +1313,15 @@ class XendDomainInfo:
frontpath = self.getDeviceController(deviceClass).frontendPath(dev)
backpath = xstransact.Read(frontpath, "backend")
thread.start_new_thread(self.getDeviceController(deviceClass).finishDeviceCleanup, (backpath, path))
-
- rc = self.getDeviceController(deviceClass).destroyDevice(devid, force)
+ if deviceClass =='vusb':
+ if deviceClass =='vusb':
+ dev = self.getDeviceController(deviceClass).convertToDeviceNumber(devid)
+ state = self.getDeviceController(deviceClass).readBackend(dev, 'state')
+ if state == '1':

View File

@ -34,7 +34,7 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
xc = xen.lowlevel.xc.xc()
xoptions = XendOptions.instance()
@@ -3311,20 +3311,27 @@ class XendDomainInfo:
@@ -3314,20 +3314,27 @@ class XendDomainInfo:
# This is a file, not a device. pygrub can cope with a
# file if it's raw, but if it's QCOW or other such formats
# used through blktap, then we need to mount it first.
@ -76,7 +76,7 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
try:
blcfg = bootloader(blexec, fn, self, False,
@@ -3332,11 +3339,11 @@ class XendDomainInfo:
@@ -3335,11 +3342,11 @@ class XendDomainInfo:
finally:
if mounted:
log.info("Unmounting %s from %s." %

View File

@ -132,6 +132,12 @@ Fri Sep 17 15:59:45 CEST 2010 - ohering@suse.de
xenpaging.get_paged_frame.patch
xenpaging.notify_via_xen_event_channel.patch
-------------------------------------------------------------------
Mon Sep 13 16:24:31 MDT 2010 - carnold@novell.com
- bnc#636231 - XEN: Unable to disconnect/remove CDROM drive from VM
xend-devid-or-name.patch
-------------------------------------------------------------------
Mon Sep 13 10:50:56 MDT 2010 - carnold@novell.com

View File

@ -199,6 +199,7 @@ Patch370: xend-sysconfig.patch
Patch371: domu-usb-controller.patch
Patch372: popen2-argument-fix.patch
Patch373: usb-list.patch
Patch374: xend-devid-or-name.patch
# Patches for snapshot support
Patch400: snapshot-ioemu-save.patch
Patch401: snapshot-ioemu-restore.patch
@ -698,6 +699,7 @@ Authors:
%patch371 -p1
%patch372 -p1
%patch373 -p1
%patch374 -p1
%patch400 -p1
%patch401 -p1
%patch402 -p1

View File

@ -94,7 +94,7 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
XendTask.log_progress(0, 30, self._constructDomain)
XendTask.log_progress(31, 60, self._initDomain)
@@ -2987,6 +2989,11 @@ class XendDomainInfo:
@@ -2990,6 +2992,11 @@ class XendDomainInfo:
self._stateSet(DOM_STATE_HALTED)
self.domid = None # Do not push into _stateSet()!
@ -106,7 +106,7 @@ Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
finally:
self.refresh_shutdown_lock.release()
@@ -4505,6 +4512,74 @@ class XendDomainInfo:
@@ -4508,6 +4515,74 @@ class XendDomainInfo:
def has_device(self, dev_class, dev_uuid):
return (dev_uuid in self.info['%s_refs' % dev_class.lower()])

View File

@ -19,6 +19,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
tools/python/xen/xm/xenapi_create.py | 1
8 files changed, 107 insertions(+)
Index: xen-4.0.1-testing/tools/examples/xmexample.hvm
===================================================================
--- xen-4.0.1-testing.orig/tools/examples/xmexample.hvm
+++ xen-4.0.1-testing/tools/examples/xmexample.hvm
@@ -127,6 +127,9 @@ disk = [ 'file:/var/lib/xen/images/disk.
@ -31,6 +33,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
#-----------------------------------------------------------------------------
# boot on floppy (a), hard disk (c), Network (n) or CD-ROM (d)
# default: hard disk, cd-rom, floppy
Index: xen-4.0.1-testing/tools/python/README.XendConfig
===================================================================
--- xen-4.0.1-testing.orig/tools/python/README.XendConfig
+++ xen-4.0.1-testing/tools/python/README.XendConfig
@@ -120,6 +120,7 @@ otherConfig
@ -41,6 +45,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
image.hvm.display
image.hvm.xauthority
image.hvm.vncconsole
Index: xen-4.0.1-testing/tools/python/README.sxpcfg
===================================================================
--- xen-4.0.1-testing.orig/tools/python/README.sxpcfg
+++ xen-4.0.1-testing/tools/python/README.sxpcfg
@@ -51,6 +51,7 @@ image
@ -51,6 +57,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
- display
- xauthority
- vncconsole
Index: xen-4.0.1-testing/tools/python/xen/xend/XendConfig.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xend/XendConfig.py
+++ xen-4.0.1-testing/tools/python/xen/xend/XendConfig.py
@@ -145,6 +145,7 @@ XENAPI_PLATFORM_CFG_TYPES = {
@ -70,9 +78,11 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
if 'timer_mode' not in self['platform']:
self['platform']['timer_mode'] = 1
if 'viridian' not in self['platform']:
Index: xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-4.0.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -2439,6 +2439,7 @@ class XendDomainInfo:
@@ -2442,6 +2442,7 @@ class XendDomainInfo:
if self.image:
self.image.createDeviceModel()
@ -80,7 +90,7 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
#if have pass-through devs, need the virtual pci slots info from qemu
self.pci_device_configure_boot()
@@ -2451,6 +2452,11 @@ class XendDomainInfo:
@@ -2454,6 +2455,11 @@ class XendDomainInfo:
self.image.destroyDeviceModel()
except Exception, e:
log.exception("Device model destroy failed %s" % str(e))
@ -92,6 +102,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
else:
log.debug("No device model")
Index: xen-4.0.1-testing/tools/python/xen/xend/image.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xend/image.py
+++ xen-4.0.1-testing/tools/python/xen/xend/image.py
@@ -122,12 +122,14 @@ class ImageHandler:
@ -201,6 +213,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
def createDeviceModel(self, restore = False):
if self.device_model is None:
return
Index: xen-4.0.1-testing/tools/python/xen/xm/create.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xm/create.py
+++ xen-4.0.1-testing/tools/python/xen/xm/create.py
@@ -495,6 +495,10 @@ gopts.var('nfs_root', val="PATH",
@ -222,6 +236,8 @@ Signed-off-by: Olaf Hering <olaf@aepfle.de>
'device_model', 'display',
'fda', 'fdb',
'gfx_passthru', 'guest_os_type',
Index: xen-4.0.1-testing/tools/python/xen/xm/xenapi_create.py
===================================================================
--- xen-4.0.1-testing.orig/tools/python/xen/xm/xenapi_create.py
+++ xen-4.0.1-testing/tools/python/xen/xm/xenapi_create.py
@@ -1086,6 +1086,7 @@ class sxp2xml: