[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] earlier remove the backend of tapdisk device in xenstore to release the resource allocated in backend driver lies in dom0'kernel
Blktapctl thread will use qemu-dm connection instead of tapdisk-ioemu in the case of FV VM. We found the resource like memory allocated for this Guest can't be free for backend driver couldn't be closed in qemu-dm. This patch would remove the backend of tapdisk device earlier in xenstore to triger qemu-dm to notify the backend driver to release the resource allocated. I have tested this patch at the case of 1, save && restore 2, destory && shutdown 3, snapshot regards, -James (Song Wei) Signed-off-by: James ( Song Wei ) <jsong@xxxxxxxxxx> diff -r fadf63ab49e7 tools/python/xen/xend/XendDomainInfo.py --- a/tools/python/xen/xend/XendDomainInfo.py Mon Apr 19 17:57:28 2010 +0100 +++ b/tools/python/xen/xend/XendDomainInfo.py Thu Apr 22 15:54:01 2010 +0800 @@ -2406,8 +2406,13 @@ def _releaseDevices(self, suspend = False): """Release all domain's devices. Nothrow guarantee.""" + t = xstransact("%s/device" % self.vmpath) if self.image: try: + for dev in t.list('tap'): + log.debug("Early removing %s", dev); + self.getDeviceController('tap').destroyDevice(dev, True) + time.sleep(0.1) log.debug("Destroying device model") self.image.destroyDeviceModel() except Exception, e: @@ -2416,9 +2421,10 @@ log.debug("No device model") log.debug("Releasing devices") - t = xstransact("%s/device" % self.vmpath) try: for devclass in XendDevices.valid_devices(): + if devclass is 'tap': + continue for dev in t.list(devclass): try: log.debug("Removing %s", dev); http://old.nabble.com/file/p28325456/tapdisk-close.patch tapdisk-close.patch -- View this message in context: http://old.nabble.com/earlier-remove-the-backend-of-tapdisk-device-in-xenstore-to-release-the-resource-allocated-in-backend-driver-lies-in-dom0%27kernel-tp28325456p28325456.html Sent from the Xen - Dev mailing list archive at Nabble.com. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |