On 12/01/2015 13:00, Pavel Dovgalyuk wrote:
> +void replay_flush_events(void)
> +{
> +    qemu_mutex_lock(&lock);
> +    while (!QTAILQ_EMPTY(&events_list)) {
> +        Event *event = QTAILQ_FIRST(&events_list);
> +        replay_run_event(event);
> +        QTAILQ_REMOVE(&events_list, event, events);
> +        g_free(event);
> +    }
> +    qemu_mutex_unlock(&lock);

replay_run_event must run without the replay mutex, otherwise you risk
ABBA deadlocks.

Paolo

Reply via email to