{"api_version":"1","generated_at":"2026-06-03T11:06:00+00:00","cve":"CVE-2026-45851","urls":{"html":"https://cve.report/CVE-2026-45851","api":"https://cve.report/api/cve/CVE-2026-45851.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-45851","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-45851"},"summary":{"title":"efi: Fix reservation of unaccepted memory table","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nefi: Fix reservation of unaccepted memory table\n\nThe reserve_unaccepted() function incorrectly calculates the size of the\nmemblock reservation for the unaccepted memory table. It aligns the\nsize of the table, but fails to account for cases where the table's\nstarting physical address (efi.unaccepted) is not page-aligned.\n\nIf the table starts at an offset within a page and its end crosses into\na subsequent page that the aligned size does not cover, the end of the\ntable will not be reserved. This can lead to the table being overwritten\nor inaccessible, causing a kernel panic in accept_memory().\n\nThis issue was observed when starting Intel TDX VMs with specific memory\nsizes (e.g., > 64GB).\n\nFix this by calculating the end address first (including the unaligned\nstart) and then aligning it up, ensuring the entire range is covered\nby the reservation.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-05-27 14:16:57","updated_at":"2026-05-27 14:48:31"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/e649b5916725c68f44ebf45fb396df563c5dbaf2","name":"https://git.kernel.org/stable/c/e649b5916725c68f44ebf45fb396df563c5dbaf2","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/ba6b6f1502fa55621d1db23f253d54322bdbe4e0","name":"https://git.kernel.org/stable/c/ba6b6f1502fa55621d1db23f253d54322bdbe4e0","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/9b18bf59977f5c5bc3b11b210520f62500a7adf3","name":"https://git.kernel.org/stable/c/9b18bf59977f5c5bc3b11b210520f62500a7adf3","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/0862438c90487e79822d5647f854977d50381505","name":"https://git.kernel.org/stable/c/0862438c90487e79822d5647f854977d50381505","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/b7bc182ec1846be437351e44164089d988f9d0dd","name":"https://git.kernel.org/stable/c/b7bc182ec1846be437351e44164089d988f9d0dd","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-45851","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-45851","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8dbe33956d96c9d066ef15ca933ede30748198b2 b7bc182ec1846be437351e44164089d988f9d0dd git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8dbe33956d96c9d066ef15ca933ede30748198b2 ba6b6f1502fa55621d1db23f253d54322bdbe4e0 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8dbe33956d96c9d066ef15ca933ede30748198b2 9b18bf59977f5c5bc3b11b210520f62500a7adf3 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8dbe33956d96c9d066ef15ca933ede30748198b2 e649b5916725c68f44ebf45fb396df563c5dbaf2 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 8dbe33956d96c9d066ef15ca933ede30748198b2 0862438c90487e79822d5647f854977d50381505 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6.6","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.128 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.75 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.14 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19.4 6.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"45851","cve":"CVE-2026-45851","epss":"0.000180000","percentile":"0.050770000","score_date":"2026-06-01","updated_at":"2026-06-02 00:05:21"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/firmware/efi/efi.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"b7bc182ec1846be437351e44164089d988f9d0dd","status":"affected","version":"8dbe33956d96c9d066ef15ca933ede30748198b2","versionType":"git"},{"lessThan":"ba6b6f1502fa55621d1db23f253d54322bdbe4e0","status":"affected","version":"8dbe33956d96c9d066ef15ca933ede30748198b2","versionType":"git"},{"lessThan":"9b18bf59977f5c5bc3b11b210520f62500a7adf3","status":"affected","version":"8dbe33956d96c9d066ef15ca933ede30748198b2","versionType":"git"},{"lessThan":"e649b5916725c68f44ebf45fb396df563c5dbaf2","status":"affected","version":"8dbe33956d96c9d066ef15ca933ede30748198b2","versionType":"git"},{"lessThan":"0862438c90487e79822d5647f854977d50381505","status":"affected","version":"8dbe33956d96c9d066ef15ca933ede30748198b2","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/firmware/efi/efi.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"6.6"},{"lessThan":"6.6","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.128","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.75","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.14","versionType":"semver"},{"lessThanOrEqual":"6.19.*","status":"unaffected","version":"6.19.4","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.0","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.128","versionStartIncluding":"6.6","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.75","versionStartIncluding":"6.6","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.14","versionStartIncluding":"6.6","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.19.4","versionStartIncluding":"6.6","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0","versionStartIncluding":"6.6","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nefi: Fix reservation of unaccepted memory table\n\nThe reserve_unaccepted() function incorrectly calculates the size of the\nmemblock reservation for the unaccepted memory table. It aligns the\nsize of the table, but fails to account for cases where the table's\nstarting physical address (efi.unaccepted) is not page-aligned.\n\nIf the table starts at an offset within a page and its end crosses into\na subsequent page that the aligned size does not cover, the end of the\ntable will not be reserved. This can lead to the table being overwritten\nor inaccessible, causing a kernel panic in accept_memory().\n\nThis issue was observed when starting Intel TDX VMs with specific memory\nsizes (e.g., > 64GB).\n\nFix this by calculating the end address first (including the unaligned\nstart) and then aligning it up, ensuring the entire range is covered\nby the reservation."}],"providerMetadata":{"dateUpdated":"2026-05-27T12:15:23.221Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/b7bc182ec1846be437351e44164089d988f9d0dd"},{"url":"https://git.kernel.org/stable/c/ba6b6f1502fa55621d1db23f253d54322bdbe4e0"},{"url":"https://git.kernel.org/stable/c/9b18bf59977f5c5bc3b11b210520f62500a7adf3"},{"url":"https://git.kernel.org/stable/c/e649b5916725c68f44ebf45fb396df563c5dbaf2"},{"url":"https://git.kernel.org/stable/c/0862438c90487e79822d5647f854977d50381505"}],"title":"efi: Fix reservation of unaccepted memory table","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-45851","datePublished":"2026-05-27T12:15:23.221Z","dateReserved":"2026-05-13T15:03:33.079Z","dateUpdated":"2026-05-27T12:15:23.221Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-05-27 14:16:57","lastModifiedDate":"2026-05-27 14:48:31","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"45851","Ordinal":"1","Title":"efi: Fix reservation of unaccepted memory table","CVE":"CVE-2026-45851","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"45851","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nefi: Fix reservation of unaccepted memory table\n\nThe reserve_unaccepted() function incorrectly calculates the size of the\nmemblock reservation for the unaccepted memory table. It aligns the\nsize of the table, but fails to account for cases where the table's\nstarting physical address (efi.unaccepted) is not page-aligned.\n\nIf the table starts at an offset within a page and its end crosses into\na subsequent page that the aligned size does not cover, the end of the\ntable will not be reserved. This can lead to the table being overwritten\nor inaccessible, causing a kernel panic in accept_memory().\n\nThis issue was observed when starting Intel TDX VMs with specific memory\nsizes (e.g., > 64GB).\n\nFix this by calculating the end address first (including the unaligned\nstart) and then aligning it up, ensuring the entire range is covered\nby the reservation.","Type":"Description","Title":"efi: Fix reservation of unaccepted memory table"}]}}}