The affected versions of this crate incorrectly assumed that the alignment of {i,u}64 was always the same as Atomic{I,U}64.
However, the alignment of {i,u}64 on a 32-bit target can be smaller than Atomic{I,U}64.
This can cause the following problems:
Crates using fetch_* methods with AtomicCell<{i,u}64> are affected by this issue.
32-bit targets without Atomic{I,U}64 and 64-bit targets are not affected by this issue.
32-bit targets with Atomic{I,U}64 and {i,u}64 have the same alignment are also not affected by this issue.
The following is a complete list of the builtin targets that may be affected. (last update: nightly-2022-02-11)
This has been fixed in crossbeam-utils 0.8.7.
Affected 0.8.x releases have been yanked.
https://github.com/crossbeam-rs/crossbeam/pull/781
This advisory is in the public domain.
{
"cwe_ids": [
"CWE-362"
],
"github_reviewed": true,
"github_reviewed_at": "2022-02-16T22:36:21Z",
"severity": "HIGH",
"nvd_published_at": "2022-02-15T19:15:00Z"
}