build: Add ./configure --disable-fuse option.
[libguestfs.git] / daemon / sfdisk.c
index 20d7dc8..ec77465 100644 (file)
@@ -89,6 +89,20 @@ sfdisk (const char *device, int n, int cyls, int heads, int sectors,
     return -1;
   }
 
+  /* sfdisk sometimes fails on fast machines with:
+   *
+   * Re-reading the partition table ...
+   * BLKRRPART: Device or resource busy
+   * The command to re-read the partition table failed.
+   * Run partprobe(8), kpartx(8) or reboot your system now,
+   * before using mkfs
+   *
+   * Unclear if this is a bug in sfdisk or the kernel or some
+   * other component.  In any case, reread the partition table
+   * unconditionally here.
+   */
+  (void) command (NULL, NULL, "blockdev", "--rereadpt", NULL);
+
   udev_settle ();
 
   return 0;