crossbeam-deque Data Race before v0.7.4 and v0.8.1
Critical severity
GitHub Reviewed
Published
Aug 2, 2021
in
crossbeam-rs/crossbeam
•
Updated Jan 29, 2023
Package
Affected versions
< 0.7.4
>= 0.8.0, < 0.8.1
Patched versions
0.7.4
0.8.1
Description
Published by the National Vulnerability Database
Aug 2, 2021
Reviewed
Aug 2, 2021
Published to the GitHub Advisory Database
Aug 25, 2021
Last updated
Jan 29, 2023
Impact
In the affected version of this crate, the result of the race condition is that one or more tasks in the worker queue can be popped twice instead of other tasks that are forgotten and never popped. If tasks are allocated on the heap, this can cause double free and a memory leak. If not, this still can cause a logical bug.
Crates using
Stealer::steal
,Stealer::steal_batch
, orStealer::steal_batch_and_pop
are affected by this issue.Patches
This has been fixed in crossbeam-deque 0.8.1 and 0.7.4.
Credits
This issue was reported and fixed by Maor Kleinberger.
License
This advisory is in the public domain.
References