mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 17:34:18 +03:00
daemon: cleanup state drivers in order reverse to init order
This patch aims to fix observed crash on daemon shutdown. Main thread is in the process of state drivers cleanup, network driver is cleaned up and qemu driver is not yet. Meanwhile eof event from qemu process triggers qemuProcessStop -> networkReleaseActualDevice and crash happens as network driver is already cleaned up. Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
This commit is contained in:
parent
f8f7440870
commit
3ba93c754b
@ -799,12 +799,12 @@ virStateInitialize(bool privileged,
|
||||
int
|
||||
virStateCleanup(void)
|
||||
{
|
||||
size_t i;
|
||||
int r;
|
||||
int ret = 0;
|
||||
|
||||
for (i = 0; i < virStateDriverTabCount; i++) {
|
||||
if (virStateDriverTab[i]->stateCleanup &&
|
||||
virStateDriverTab[i]->stateCleanup() < 0)
|
||||
for (r = virStateDriverTabCount - 1; r >= 0; r--) {
|
||||
if (virStateDriverTab[r]->stateCleanup &&
|
||||
virStateDriverTab[r]->stateCleanup() < 0)
|
||||
ret = -1;
|
||||
}
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user