Description
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 products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
31da94c25aea835ceac00575a9fd206c5a833fed to < ac00301adb19df54f2eae1efc4bad7447c0156ceaffected31da94c25aea835ceac00575a9fd206c5a833fed to < 879fabc5a95401d9bce357e4b1d24ae4a360a81faffected31da94c25aea835ceac00575a9fd206c5a833fed to < 7e1864332fbc1b993659eab7974da9fe8bf8c128affected
Linux Linux
Default version status: affected
5.14affected0 to < 5.14unaffected5.15.82 to ≤ 5.15.*unaffected6.0.12 to ≤ 6.0.*unaffected6.1 to ≤ *unaffected