crosvm/cros_async
Frederick Mayle 5fc2f8463d cros_async: iocp: fix condvar usage
Before the sequence was something like

    1. take lock
    2. compute a condition
    3. release lock
    4. check the condition
    5. take lock again
    6. wait on condvar

Between steps 3 and 5 someone else could take the lock and send a
notification that would then never be seen by step 6, potentially
resulting a deadlock.

BUG=b:321975174

Change-Id: I1bd329d3de43bf9b68feae80c5b87c9b0eb9aef4
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/5320156
Reviewed-by: Noah Gold <nkgold@google.com>
Reviewed-by: Richard Zhang <rizhang@google.com>
Commit-Queue: Frederick Mayle <fmayle@google.com>
2024-03-04 03:32:48 +00:00
..
src cros_async: iocp: fix condvar usage 2024-03-04 03:32:48 +00:00
tests cros_async: Separate ExecutorKind and ExecutorKindSys 2024-02-21 23:23:07 +00:00
Cargo.toml cros_async: assert IoSource is Send and Sync 2023-12-15 19:40:13 +00:00