mirror of https://gitee.com/openkylin/libvirt.git
qemuBlockJobUpdate: Remove return value
No callers use it any more. Additionally if qemuBlockJobUpdate was called with the last reference of the job e.g. in qemuBlockJobRefreshJobs, the reading of the job state would happen from freed memory. Reported-by: Pavel Mores <pmores@redhat.com> Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Pavel Mores <pmores@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
028cc19c65
commit
ddce75fac0
|
@ -1658,10 +1658,8 @@ qemuBlockJobEventProcess(virQEMUDriverPtr driver,
|
|||
*
|
||||
* Update disk's mirror state in response to a block job event stored in
|
||||
* blockJobStatus by qemuProcessHandleBlockJob event handler.
|
||||
*
|
||||
* Returns the block job event processed or -1 if there was no pending event.
|
||||
*/
|
||||
int
|
||||
void
|
||||
qemuBlockJobUpdate(virDomainObjPtr vm,
|
||||
qemuBlockJobDataPtr job,
|
||||
int asyncJob)
|
||||
|
@ -1669,14 +1667,12 @@ qemuBlockJobUpdate(virDomainObjPtr vm,
|
|||
qemuDomainObjPrivatePtr priv = vm->privateData;
|
||||
|
||||
if (job->newstate == -1)
|
||||
return -1;
|
||||
return;
|
||||
|
||||
if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKDEV))
|
||||
qemuBlockJobEventProcess(priv->driver, vm, job, asyncJob);
|
||||
else
|
||||
qemuBlockJobEventProcessLegacy(priv->driver, vm, job, asyncJob);
|
||||
|
||||
return job->state;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -232,9 +232,10 @@ int
|
|||
qemuBlockJobRefreshJobs(virQEMUDriverPtr driver,
|
||||
virDomainObjPtr vm);
|
||||
|
||||
int qemuBlockJobUpdate(virDomainObjPtr vm,
|
||||
qemuBlockJobDataPtr job,
|
||||
int asyncJob);
|
||||
void
|
||||
qemuBlockJobUpdate(virDomainObjPtr vm,
|
||||
qemuBlockJobDataPtr job,
|
||||
int asyncJob);
|
||||
|
||||
void qemuBlockJobSyncBegin(qemuBlockJobDataPtr job);
|
||||
void qemuBlockJobSyncEnd(virDomainObjPtr vm,
|
||||
|
|
Loading…
Reference in New Issue