Pierrick Bouvier <pierrick.bouv...@linaro.org> writes:

> A deadlock can be created if a new vcpu (a) triggers a scoreboard
> reallocation, and another vcpu (b) wants to create a new scoreboard at
> the same time.
>
> In this case, (a) holds the plugin lock, and starts an exclusive
> section, waiting for (b). But at the same time, (b) is waiting for
> plugin lock.
>
> The solution is to drop the lock before entering the exclusive section.
>
> This bug can be easily reproduced by creating a callback for any tb
> exec, that allocates a new scoreboard. In this case, as soon as we reach
> more than 16 vcpus, the deadlock occurs.
>
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2344
> Signed-off-by: Pierrick Bouvier <pierrick.bouv...@linaro.org>

Queued to maintainer/for-9.1, thanks.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro

Reply via email to