diff options
author | Lukas Straub <lukasstraub2@web.de> | 2020-05-22 15:53:55 +0800 |
---|---|---|
committer | Jason Wang <jasowang@redhat.com> | 2020-06-18 21:05:52 +0800 |
commit | 45942b79b9f89b42a5f5ccfa861c36a86a95d89a (patch) | |
tree | b883d75105b47c5bd649af713f9c18c65885532c /MAINTAINERS | |
parent | 76658541f3950e580ae3be8019f1b4c019a8a638 (diff) |
net/colo-compare.c: Check that colo-compare is active
If the colo-compare object is removed before failover and a
checkpoint happens, qemu crashes because it tries to lock
the destroyed event_mtx in colo_notify_compares_event.
Fix this by checking if everything is initialized by
introducing a new variable colo_compare_active which
is protected by a new mutex colo_compare_mutex. The new mutex
also protects against concurrent access of the net_compares
list and makes sure that colo_notify_compares_event isn't
active while we destroy event_mtx and event_complete_cond.
With this it also is again possible to use colo without
colo-compare (periodic mode) and to use multiple colo-compare
for multiple network interfaces.
Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Tested-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Signed-off-by: Zhang Chen <chen.zhang@intel.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'MAINTAINERS')
0 files changed, 0 insertions, 0 deletions