Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: riscv: fix race when vmap stack overflow Currently, when detecting vmap stack overflow, riscv firstly switches to the so called shadow stack, then use this shadow stack to call the get_overflow_stack() to get the overflow stack. However, there's a race here if two or more harts use the same shadow stack at the same time. To solve this race, we introduce spin_shadow_stack atomic var, which will be swap between its own address and 0 in atomic way, when the var is set, it means the shadow_stack is being used; when the var is cleared, it means the shadow_stack isn't being used. [Palmer: Add AQ to the swap, and also some comments.]
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 31da94c25aea835ceac00575a9fd206c5a833fed before ac00301adb19df54f2eae1efc4bad7447c0156ce; affected 31da94c25aea835ceac00575a9fd206c5a833fed before 879fabc5a95401d9bce357e4b1d24ae4a360a81f; affected 31da94c25aea835ceac00575a9fd206c5a833fed before 7e1864332fbc1b993659eab7974da9fe8bf8c128 |
| Linux / Linux | affected 5.14; unaffected 0 before 5.14; unaffected 5.15.82 through 5.15.*; unaffected 6.0.12 through 6.0.*; unaffected 6.1 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/ac00301adb19df54f2eae1efc4bad7447c0156ce
- https://git.kernel.org/stable/c/879fabc5a95401d9bce357e4b1d24ae4a360a81f
- https://git.kernel.org/stable/c/7e1864332fbc1b993659eab7974da9fe8bf8c128
ADP enrichment
No English description supplied.
No references supplied.