CVE-2024-49856

Summary

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.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 40fb64257dab507d86b5f1f2a62f3669ef0c91a8affected
LinuxLinux901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 20c96d0aaabfe361fc2a11c173968dc67feadbbfaffected
LinuxLinux901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < fb2d057539eda67ec7cfc369bf587e6518a9b99daffected
LinuxLinux901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 0f89fb4042c08fd143bfc28af08bf6c8a0197eeaaffected
LinuxLinux901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 8132510c915815e6b537ab937d94ed66893bc7b8affected
LinuxLinux901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 9c936844010466535bd46ea4ce4656ef17653644affected
LinuxLinux5.13affected
LinuxLinux0 < 5.13unaffected
LinuxLinux5.15.168 <= 5.15.*unaffected
LinuxLinux6.1.113 <= 6.1.*unaffected
LinuxLinux6.6.54 <= 6.6.*unaffected
LinuxLinux6.10.13 <= 6.10.*unaffected
LinuxLinux6.11.2 <= 6.11.*unaffected
LinuxLinux6.12 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

CVE Program Container

Additional References

References