CVE-2024-49856

medium

Description

In the Linux kernel, the following vulnerability has been resolved: x86/sgx: Fix deadlock in SGX NUMA node search When the current node doesn't have an EPC section configured by firmware and all other EPC sections are used up, CPU can get stuck inside the while loop that looks for an available EPC page from remote nodes indefinitely, leading to a soft lockup. Note how nid_of_current will never be equal to nid in that while loop because nid_of_current is not set in sgx_numa_mask. Also worth mentioning is that it's perfectly fine for the firmware not to setup an EPC section on a node. While setting up an EPC section on each node can enhance performance, it is not a requirement for functionality. Rework the loop to start and end on *a* node that has SGX memory. This avoids the deadlock looking for the current SGX-lacking node to show up in the loop when it never will.

References

https://git.kernel.org/stable/c/fb2d057539eda67ec7cfc369bf587e6518a9b99d

https://git.kernel.org/stable/c/9c936844010466535bd46ea4ce4656ef17653644

https://git.kernel.org/stable/c/8132510c915815e6b537ab937d94ed66893bc7b8

https://git.kernel.org/stable/c/40fb64257dab507d86b5f1f2a62f3669ef0c91a8

https://git.kernel.org/stable/c/20c96d0aaabfe361fc2a11c173968dc67feadbbf

https://git.kernel.org/stable/c/0f89fb4042c08fd143bfc28af08bf6c8a0197eea

Details

Source: Mitre, NVD

Published: 2024-10-21

Updated: 2024-10-23

Risk Information

CVSS v2

Base Score: 4.6

Vector: CVSS2#AV:L/AC:L/Au:S/C:N/I:N/A:C

Severity: Medium

CVSS v3

Base Score: 5.5

Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Severity: Medium