mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-06 01:57:31 +03:00
qemu: block: Properly handle FD-passed disk hot-(un-)plug
The hotplug code paths need to be able to pass the FDs to the monitor to ensure that hotplug works. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
parent
f730b1e4f2
commit
3b8d669d55
@ -1410,6 +1410,9 @@ qemuBlockStorageSourceAttachApplyStorageDeps(qemuMonitor *mon,
|
||||
qemuMonitorAddObject(mon, &data->tlsProps, &data->tlsAlias) < 0)
|
||||
return -1;
|
||||
|
||||
if (qemuFDPassTransferMonitor(data->fdpass, mon) < 0)
|
||||
return -1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1559,6 +1562,8 @@ qemuBlockStorageSourceAttachRollback(qemuMonitor *mon,
|
||||
if (data->tlsKeySecretAlias)
|
||||
ignore_value(qemuMonitorDelObject(mon, data->tlsKeySecretAlias, false));
|
||||
|
||||
qemuFDPassTransferMonitorRollback(data->fdpass, mon);
|
||||
|
||||
virErrorRestore(&orig_err);
|
||||
}
|
||||
|
||||
@ -1609,6 +1614,8 @@ qemuBlockStorageSourceDetachPrepare(virStorageSource *src)
|
||||
|
||||
if (srcpriv->tlsKeySecret)
|
||||
data->tlsKeySecretAlias = g_strdup(srcpriv->tlsKeySecret->alias);
|
||||
|
||||
data->fdpass = srcpriv->fdpass;
|
||||
}
|
||||
|
||||
return g_steal_pointer(&data);
|
||||
|
Loading…
x
Reference in New Issue
Block a user