]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph-disk: partprobe after creating journal partition
authorSage Weil <sage@inktank.com>
Wed, 21 Aug 2013 05:39:09 +0000 (22:39 -0700)
committerSage Weil <sage@inktank.com>
Tue, 27 Aug 2013 04:33:21 +0000 (21:33 -0700)
At least one user reports that a partprobe is needed after creating the
journal partition.  It is not clear why sgdisk is not doing it, but this
fixes ceph-disk for them, and should be harmless for other users.

Fixes: #5599
Tested-by: lurbs in #ceph
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 2af59d5e81c5e3e3d7cfc50d9330d7364659c5eb)
(cherry picked from commit 3e42df221315679605d68b2875aab6c7eb6b3cc4)

src/ceph-disk

index dce6224080e5350d6082f945d012b258342a0bf5..3d09bdf7418fc9b465ded9a05477b06076a8ef7a 100755 (executable)
@@ -851,9 +851,21 @@ def prepare_journal_dev(
                 journal,
                 ],
             )
+
+        # try to make sure the kernel refreshes the table.  note
+        # that if this gets ebusy, we are probably racing with
+        # udev because it already updated it.. ignore failure here.
+        LOG.debug('Calling partprobe on prepared device %s', journal)
+        subprocess.call(
+            args=[
+                'partprobe',
+                journal,
+                ],
+            )
+
+        # wait for udev event queue to clear
         subprocess.call(
             args=[
-                # wait for udev event queue to clear
                 'udevadm',
                 'settle',
                 ],