[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] Fix blktap2 test in xen-hotplug-cleanup


  • To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Jim Fehlig <jfehlig@xxxxxxxxxx>
  • Date: Sun, 21 Feb 2010 21:29:47 -0700
  • Delivery-date: Sun, 21 Feb 2010 20:26:01 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

The blktap2 test in xen-hotplug-cleanup was not quite right, causing
orphaned /vm/<uuid>/device node in xenstore.  Attempt to reattach the
device failed:

xen53: # xm block-attach 0 file:/tmp/d0 /dev/xvdp r
xen53: # xm block-detach 0 /dev/xvdp
xen53: # xenstore-ls /vm/00000000-0000-0000-0000-000000000000/device
vbd = ""
 51952 = ""
  frontend = "/local/domain/0/device/vbd/51952"
  frontend-id = "0"
  backend-id = "0"
  backend = "/local/domain/0/backend/vbd/0/51952"
xen53: # xm block-attach 0 file:/tmp/d0 /dev/xvdp r
Error: Device /dev/xvdp (51952, vbd) is already connected.
Usage: xm block-attach <Domain> <BackDev> <FrontDev> <Mode> [BackDomain]

Attached patch fixes the test.

Regards,
Jim
Index: xen-4.0.0-testing/tools/hotplug/Linux/xen-hotplug-cleanup
===================================================================
--- xen-4.0.0-testing.orig/tools/hotplug/Linux/xen-hotplug-cleanup
+++ xen-4.0.0-testing/tools/hotplug/Linux/xen-hotplug-cleanup
@@ -21,7 +21,7 @@ if [ "$vm" != "" ]; then
 
   # if the vm path does not exist and the device class is 'vbd' then we may 
have
   # a tap2 device
-  if [ ! $(xenstore-read "vm_dev" 2>/dev/null) ] \
+  if [ $(xenstore-read "$vm_dev" 2>/dev/null) != "" ] \
        && [ "${path_array[1]}" = "vbd" ]; then
     vm_dev="$vm/device/tap2/${path_array[3]}"
   fi
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.