From: Gary Lowell Date: Tue, 26 Mar 2013 18:31:16 +0000 (-0700) Subject: ceph-disk: udevadm settle before partprobe X-Git-Tag: v0.62~175 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9eda8e5d5abf0743a2ad484806cfb2018243515f;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 --- diff --git a/src/ceph-disk b/src/ceph-disk index 28cba37f5977..ffc94232cc26 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