CVE-2021-47214
CVE.org · Publicado
- Status do registro
- Publicado
- Ano do identificador (não é o ano de publicação)
- 2021
- Publicação na fonte
- Atualização na fonte
- Importado pelo cveboard
- Snapshot da fonte
- cve_2026-10-24_midnight_baseline ·
Texto da CNA em inglês
hugetlb, userfaultfd: fix reservation restore on userfaultfd error
In the Linux kernel, the following vulnerability has been resolved: hugetlb, userfaultfd: fix reservation restore on userfaultfd error Currently in the is_continue case in hugetlb_mcopy_atomic_pte(), if we bail out using "goto out_release_unlock;" in the cases where idx >= size, or !huge_pte_none(), the code will detect that new_pagecache_page == false, and so call restore_reserve_on_error(). In this case I see restore_reserve_on_error() delete the reservation, and the following call to remove_inode_hugepages() will increment h->resv_hugepages causing a 100% reproducible leak. We should treat the is_continue case similar to adding a page into the pagecache and set new_pagecache_page to true, to indicate that there is no reservation to restore on the error path, and we need not call restore_reserve_on_error(). Rename new_pagecache_page to page_in_pagecache to make that clear.
Fatos de produtos e versões por escopo
Dados de correção desconhecidos; nenhuma versão corrigida é deduzida aqui. Dados ausentes não comprovam ausência de correção.
Exploração desconhecida; este catálogo não avalia exploração.
Linux
- Fornecedor
- Linux
- Produto
- Linux
- Plataformas
- Desconhecido
- Status padrão
unaffected
| Versão (version) | Status (status) | Esquema de versões (versionType) | Fim exclusivo (lessThan) | Fim inclusivo (lessThanOrEqual) | Mudanças de status (at → status) |
|---|---|---|---|---|---|
| c7b1850dfb41d0b4154aca8dbc04777fbd75616f | affected | git | b5069d44e2fbc4a9093d005b3ef0949add3dd27e | Indisponível | Nenhuma listada |
| c7b1850dfb41d0b4154aca8dbc04777fbd75616f | affected | git | cc30042df6fcc82ea18acf0dace831503e60a0b7 | Indisponível | Nenhuma listada |
| 515b6124df6a84c957c5cc6bb6e8309dae7b1e9c | affected | git | Indisponível | Indisponível | Nenhuma listada |
| 5.13.13 | affected | semver | 5.14 | Indisponível | Nenhuma listada |
Linux
- Fornecedor
- Linux
- Produto
- Linux
- Plataformas
- Desconhecido
- Status padrão
affected
| Versão (version) | Status (status) | Esquema de versões (versionType) | Fim exclusivo (lessThan) | Fim inclusivo (lessThanOrEqual) | Mudanças de status (at → status) |
|---|---|---|---|---|---|
| 5.14 | affected | Indisponível | Indisponível | Indisponível | Nenhuma listada |
| 0 | unaffected | semver | 5.14 | Indisponível | Nenhuma listada |
| 5.15.5 | unaffected | semver | Indisponível | 5.15.* | Nenhuma listada |
| 5.16 | unaffected | original_commit_for_fix | Indisponível | * | Nenhuma listada |