CVE-2026-80698 in Linux
Sumário
de VulDB • 28/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
dmaengine: idxd: corrige o double free das estruturas wq, engine e group
Os callbacks de liberação para dispositivos wq, engine e group (idxd_conf_wq_release, idxd_conf_engine_release, idxd_conf_group_release) chamam kfree() na estrutura contida. Os caminhos de erro durante a configuração e as funções de limpeza também chamam kfree() explicitamente após put_device(), produzindo um double free sempre que put_device() reduz a contagem de referências para zero e dispara o release.
Nas funções de configuração, device_initialize() é chamada antes de device_add(), portanto, a contagem de referências é exatamente 1 nos locais de erro. put_device() dispara incondicionalmente o release, que libera a estrutura; o kfree() explícito subsequente opera então em memória já liberada.
Para idxd_setup_wqs(), o callback de liberação do wq também possui opcap_bmap e wqcfg. O processo de desfazimento (unwind) dos erros liberta explicitamente esses campos antes de chamar put_device(), causando mais double frees em ambos.
Remova as chamadas explícitas kfree() redundantes de todos os caminhos de erro da configuração e das funções de limpeza para as estruturas wq, engine e group, delegando a propriedade exclusiva dessas alocações aos callbacks de release.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.