diff options
author | David Lehman <dlehman@redhat.com> | 2009-04-03 17:13:56 -0500 |
---|---|---|
committer | David Lehman <dlehman@redhat.com> | 2009-04-06 11:19:37 -0500 |
commit | 668e77e0185c7ba06c2703596a10426653585cb9 (patch) | |
tree | 7b7408f4e6bcce1be702434b81b4c67fde2e6c1c /storage | |
parent | 5e04e567c814bbad4545a020ffb28b837a106c81 (diff) | |
download | anaconda-668e77e0185c7ba06c2703596a10426653585cb9.tar.gz anaconda-668e77e0185c7ba06c2703596a10426653585cb9.tar.xz anaconda-668e77e0185c7ba06c2703596a10426653585cb9.zip |
udev_settle after format teardown to avoid EBUSY on device teardown. (#492670)
Diffstat (limited to 'storage')
-rw-r--r-- | storage/devices.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/storage/devices.py b/storage/devices.py index f6ab638e4..9d3b84af0 100644 --- a/storage/devices.py +++ b/storage/devices.py @@ -524,6 +524,7 @@ class StorageDevice(Device): if self.status and self.format.exists: self.format.teardown() + udev_settle(timeout=10) if recursive: self.teardownParents(recursive=recursive) @@ -1450,10 +1451,11 @@ class LUKSDevice(DMCryptDevice): if self.status and self.format.exists: self.format.teardown() - udev_settle() + udev_settle(timeout=10) if self.slave.format.exists: self.slave.format.teardown() + udev_settle(timeout=10) if recursive: self.teardownParents(recursive=recursive) @@ -1461,6 +1463,7 @@ class LUKSDevice(DMCryptDevice): def destroy(self): log_method_call(self, self.name, status=self.status) self.format.teardown() + udev_settle(timeout=10) self.teardown() @property @@ -1958,6 +1961,7 @@ class LVMLogicalVolumeDevice(DMDevice): if self.status and self.format.exists: self.format.teardown() + udev_settle(timeout=10) if self.status: lvm.lvdeactivate(self.vg.name, self._name) @@ -2006,6 +2010,7 @@ class LVMLogicalVolumeDevice(DMDevice): raise DeviceError("device has not been created") self.format.teardown() + udev_settle(timeout=10) lvm.lvresize(self.vg.name, self._name, self.size) @@ -2298,6 +2303,7 @@ class MDRaidArrayDevice(StorageDevice): if self.status and self.format.exists: self.format.teardown() + udev_settle(timeout=10) if self.status: mdraid.mddeactivate(self.path) @@ -2448,6 +2454,7 @@ class DMRaidArrayDevice(DiskDevice): if self.format.exists: self.format.teardown() + udev_settle(timeout=10) # This call already checks if the set is not active. self._raidSet.deactivate() |