[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 1/1] plugins: fix race condition with scoreboards
From: |
Alex Bennée |
Subject: |
Re: [PATCH v2 1/1] plugins: fix race condition with scoreboards |
Date: |
Tue, 13 Aug 2024 16:47:13 +0100 |
Pierrick Bouvier <pierrick.bouvier@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.bouvier@linaro.org>
Queued to maintainer/for-9.1, thanks.
--
Alex Bennée
Virtualisation Tech Lead @ Linaro