From: Gary Lowell Date: Tue, 26 Mar 2013 18:31:16 +0000 (-0700) Subject: ceph-disk: udevadm settle before partprobe X-Git-Tag: v0.56.5~5^2~24 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0113e5335e1552294bbf075cfff85c204b164e95;p=ceph.git ceph-disk: udevadm settle before partprobe After changing the partition table, allow the udev event to be processed before calling partprobe. This helps prevent partprobe from getting a resource busy error on some platforms. Signed-off-by: Gary Lowell (cherry picked from commit 9eda8e5d5abf0743a2ad484806cfb2018243515f) --- diff --git a/src/ceph-disk b/src/ceph-disk index 81dbd840cc9d..df5706a79224 100755 --- a/src/ceph-disk +++ b/src/ceph-disk @@ -666,6 +666,14 @@ def prepare_journal_dev( journal, ], ) + subprocess.check_call( + args=[ + # wait for udev event queue to clear + 'udevadm', + 'settle', + '--timeout=10', + ], + ) subprocess.check_call( args=[ # also make sure the kernel refreshes the new table @@ -845,6 +853,14 @@ def prepare_dev( data, ], ) + subprocess.check_call( + args=[ + # wait for udev event queue to clear + 'udevadm', + 'settle', + '--timeout=10', + ], + ) subprocess.check_call( args=[ # also make sure the kernel refreshes the new table @@ -916,6 +932,14 @@ def prepare_dev( data, ], ) + subprocess.check_call( + args=[ + # wait for udev event queue to clear + 'udevadm', + 'settle', + '--timeout=10', + ], + ) subprocess.check_call( args=[ # also make sure the kernel refreshes the new table