mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemu_agent: Use automatic mutex management
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
dd057af7ae
commit
a38f4d53f8
@ -679,9 +679,9 @@ qemuAgentNotifyClose(qemuAgent *agent)
|
|||||||
|
|
||||||
VIR_DEBUG("agent=%p", agent);
|
VIR_DEBUG("agent=%p", agent);
|
||||||
|
|
||||||
virObjectLock(agent);
|
VIR_WITH_OBJECT_LOCK_GUARD(agent) {
|
||||||
qemuAgentNotifyCloseLocked(agent);
|
qemuAgentNotifyCloseLocked(agent);
|
||||||
virObjectUnlock(agent);
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -692,17 +692,16 @@ void qemuAgentClose(qemuAgent *agent)
|
|||||||
|
|
||||||
VIR_DEBUG("agent=%p", agent);
|
VIR_DEBUG("agent=%p", agent);
|
||||||
|
|
||||||
virObjectLock(agent);
|
VIR_WITH_OBJECT_LOCK_GUARD(agent) {
|
||||||
|
if (agent->socket) {
|
||||||
|
qemuAgentUnregister(agent);
|
||||||
|
g_clear_pointer(&agent->socket, g_object_unref);
|
||||||
|
agent->fd = -1;
|
||||||
|
}
|
||||||
|
|
||||||
if (agent->socket) {
|
qemuAgentNotifyCloseLocked(agent);
|
||||||
qemuAgentUnregister(agent);
|
|
||||||
g_clear_pointer(&agent->socket, g_object_unref);
|
|
||||||
agent->fd = -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qemuAgentNotifyCloseLocked(agent);
|
|
||||||
virObjectUnlock(agent);
|
|
||||||
|
|
||||||
virObjectUnref(agent);
|
virObjectUnref(agent);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1125,7 +1124,7 @@ qemuAgentMakeStringsArray(const char **strings, unsigned int len)
|
|||||||
void qemuAgentNotifyEvent(qemuAgent *agent,
|
void qemuAgentNotifyEvent(qemuAgent *agent,
|
||||||
qemuAgentEvent event)
|
qemuAgentEvent event)
|
||||||
{
|
{
|
||||||
virObjectLock(agent);
|
VIR_LOCK_GUARD lock = virObjectLockGuard(agent);
|
||||||
|
|
||||||
VIR_DEBUG("agent=%p event=%d await_event=%d", agent, event, agent->await_event);
|
VIR_DEBUG("agent=%p event=%d await_event=%d", agent, event, agent->await_event);
|
||||||
if (agent->await_event == event) {
|
if (agent->await_event == event) {
|
||||||
@ -1136,8 +1135,6 @@ void qemuAgentNotifyEvent(qemuAgent *agent,
|
|||||||
virCondSignal(&agent->notify);
|
virCondSignal(&agent->notify);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
virObjectUnlock(agent);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
VIR_ENUM_DECL(qemuAgentShutdownMode);
|
VIR_ENUM_DECL(qemuAgentShutdownMode);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user