CVE-2026-43348 in Linux
Sumário
de VulDB • 25/05/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
mshv_vtl: Corrige vmemmap_shift excedendo MAX_FOLIO_ORDER
Ao registrar memória VTL0 via MSHV_ADD_VTL0_MEMORY, o kernel calcula pgmap->vmemmap_shift como o número de zeros à direita no OR entre start_pfn e last_pfn, com a intenção de usar a maior ordem de página composta à qual ambas as extremidades estão alinhadas.
No entanto, esse valor não é limitado a MAX_FOLIO_ORDER, portanto, um intervalo suficientemente alinhado (por exemplo, o intervalo físico [0x800000000000, 0x800080000000), correspondente a start_pfn=0x800000000 com 35 zeros à direita) pode produzir um deslocamento maior do que o que memremap_pages() aceita, acionando um WARN e retornando -EINVAL:
WARNING: ... memremap_pages+0x512/0x650 tamanho de folio solicitado não suportado
A verificação MAX_FOLIO_ORDER foi adicionada pelo commit 646b67d57589 ("mm/memremap: rejeita tamanhos de folio/página composta não razoáveis em memremap_pages()").
Corrige-se isso limitando vmemmap_shift a MAX_FOLIO_ORDER para que sempre se solicite a maior ordem suportada pelo kernel nesses casos, em vez de um valor fora do intervalo.
Também corrige-se o caminho de erro para propagar o código de erro real de devm_memremap_pages() em vez de codificar fixamente -EFAULT, o que estava mascarando o retorno real -EINVAL.
If you want to get best quality of vulnerability data, you may have to visit VulDB.