]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Fix volume deletion when device mapper is used
authorRafi Khardalian <rafi@metacloud.com>
Wed, 5 Sep 2012 05:51:43 +0000 (05:51 +0000)
committerJohn Griffith <john.griffith@solidfire.com>
Mon, 17 Sep 2012 19:14:06 +0000 (13:14 -0600)
Call dmsetup remove if there is a /dev/mapper/nova--volumes-
element present.

Resolves bug 979020

Change-Id: Iddaaed411a77dda4bd32f9a97687ff17744119eb

cinder/volume/driver.py
etc/cinder/rootwrap.d/volume.filters

index 435e023e431cd8a8206923851673cc60c730e008..a0bc3941b81cdc55a4bcb2daf5fc05b3648ccd23 100644 (file)
@@ -148,6 +148,10 @@ class VolumeDriver(object):
         # zero out old volumes to prevent data leaking between users
         # TODO(ja): reclaiming space should be done lazy and low priority
         self._copy_volume('/dev/zero', self.local_path(volume), size_in_g)
+        dev_path = self.local_path(volume)
+        if os.path.exists(dev_path):
+            self._try_execute('dmsetup', 'remove', '-f', dev_path,
+                              run_as_root=True)
         self._try_execute('lvremove', '-f', "%s/%s" %
                           (FLAGS.volume_group,
                            self._escape_snapshot(volume['name'])),
index 24cc5620285cc90e9d3c91e9a11ea484bed7b7d1..20d7e9badcde60a9314112f210e69c2fc30f8273 100644 (file)
@@ -30,3 +30,7 @@ iscsiadm_usr: CommandFilter, /usr/bin/iscsiadm, root
 
 #cinder/volume/.py: utils.temporary_chown(path, 0), ...
 chown: CommandFilter, /bin/chown, root
+
+# cinder/volume/driver.py
+dmsetup: CommandFilter, /sbin/dmsetup, root
+dmsetup_usr: CommandFilter, /usr/sbin/dmsetup, root