mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-21 22:53:37 +00:00
Call blockdev --rereadpt after sfdisk commands.
On fast machines sfdisk has some sort of race where it fails to re-read the partition table it has just created (it's not clear if this is a race in sfdisk, the kernel or some other component). This commit works around the problem by calling blockdev --rereadpt after sfdisk operations, which experience shows is enough to stop the problem from happening.
This commit is contained in:
@@ -91,7 +91,19 @@ sfdisk (const char *device, int n, int cyls, int heads, int sectors,
|
||||
|
||||
udev_settle ();
|
||||
|
||||
return 0;
|
||||
/* 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.
|
||||
*/
|
||||
return do_blockdev_rereadpt (device);
|
||||
}
|
||||
|
||||
int
|
||||
|
||||
Reference in New Issue
Block a user