Pausing udev events during commit of RAID partition tables to map its logical partitions.
This commit is contained in:
parent
700dddb875
commit
8b28001ae2
|
@ -53,10 +53,16 @@ bool SfdiskPartitionTable::open()
|
|||
|
||||
bool SfdiskPartitionTable::commit(quint32 timeout)
|
||||
{
|
||||
if (m_device->type() == Device::Type::SoftwareRAID_Device)
|
||||
ExternalCommand(QStringLiteral("udevadm"), { QStringLiteral("control"), QStringLiteral("--stop-exec-queue") }).run();
|
||||
|
||||
ExternalCommand(QStringLiteral("udevadm"), { QStringLiteral("settle"), QStringLiteral("--timeout=") + QString::number(timeout) }).run();
|
||||
ExternalCommand(QStringLiteral("blockdev"), { QStringLiteral("--rereadpt"), m_device->deviceNode() }).run();
|
||||
ExternalCommand(QStringLiteral("udevadm"), { QStringLiteral("trigger") }).run();
|
||||
|
||||
if (m_device->type() == Device::Type::SoftwareRAID_Device)
|
||||
ExternalCommand(QStringLiteral("udevadm"), { QStringLiteral("control"), QStringLiteral("--start-exec-queue") }).run();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue