Description
In the Linux kernel, the following vulnerability has been resolved: efi: Fix reservation of unaccepted memory table The reserve_unaccepted() function incorrectly calculates the size of the memblock reservation for the unaccepted memory table. It aligns the size of the table, but fails to account for cases where the table's starting physical address (efi.unaccepted) is not page-aligned. If the table starts at an offset within a page and its end crosses into a subsequent page that the aligned size does not cover, the end of the table will not be reserved. This can lead to the table being overwritten or inaccessible, causing a kernel panic in accept_memory(). This issue was observed when starting Intel TDX VMs with specific memory sizes (e.g., > 64GB). Fix this by calculating the end address first (including the unaligned start) and then aligning it up, ensuring the entire range is covered by the reservation.
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
8dbe33956d96c9d066ef15ca933ede30748198b2 to < b7bc182ec1846be437351e44164089d988f9d0ddaffected8dbe33956d96c9d066ef15ca933ede30748198b2 to < ba6b6f1502fa55621d1db23f253d54322bdbe4e0affected8dbe33956d96c9d066ef15ca933ede30748198b2 to < 9b18bf59977f5c5bc3b11b210520f62500a7adf3affected8dbe33956d96c9d066ef15ca933ede30748198b2 to < e649b5916725c68f44ebf45fb396df563c5dbaf2affected8dbe33956d96c9d066ef15ca933ede30748198b2 to < 0862438c90487e79822d5647f854977d50381505affected
Linux Linux
Default version status: affected
6.6affected0 to < 6.6unaffected6.6.128 to ≤ 6.6.*unaffected6.12.75 to ≤ 6.12.*unaffected6.18.14 to ≤ 6.18.*unaffected6.19.4 to ≤ 6.19.*unaffected7.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/b7bc182ec1846be437351e44164089d988f9d0dd ↗
- https://git.kernel.org/stable/c/ba6b6f1502fa55621d1db23f253d54322bdbe4e0 ↗
- https://git.kernel.org/stable/c/9b18bf59977f5c5bc3b11b210520f62500a7adf3 ↗
- https://git.kernel.org/stable/c/e649b5916725c68f44ebf45fb396df563c5dbaf2 ↗
- https://git.kernel.org/stable/c/0862438c90487e79822d5647f854977d50381505 ↗