CVE-2026-89455informação

Sumário

de VulDB • 12/09/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

PCI: plda: Corrige o uso após liberação (use-after-free) das IRQs de evento durante o processo de desmontagem (teardown).

plda_pcie_irq_domain_deinit() remove pcie->event_domain via irq_domain_remove(), mas as IRQs por evento mapeadas a partir desse domínio são solicitadas com devm_request_irq() em plda_init_interrupts(). A liberação real da free_irq() para uma IRQ gerenciada por devres é adiada pelo devres até após o retorno da função probe()/remove() que chamou.

Isso significa que irq_domain_remove() pode liberar os dados internos do domínio antes que a free_irq() adiada para as IRQs ainda mapeadas nele seja executada. Quando o devrs processa essa limpeza adiada posteriormente, ele acaba por desreferenciar um domínio já liberado.

Libere cada IRQ de evento explicitamente com devm_free_irq() antes de remover o domínio. Isso aciona a liberação imediatamente e remove a IRQ da lista de rastreamento do devres, para que o devrs não tente liberá-la novamente mais tarde.

Também descarte os mapeamentos das IRQs de evento, INTx e MSI com irq_dispose_mapping() antes que seus domínios proprietores sejam removidos.

Por fim, proteja as chamadas a irq_set_chained_handler_and_data() para pcie->irq, pcie->msi_irq e pcie->intx_irq para que elas só sejam executadas quando esses campos contiverem um número de IRQ válido (>0).

Este é um problema preexistente, sinalizado por revisão automatizada durante o trabalho em um patch anterior não relacionado a este driver.

Testado na compilação (build-tested) e no boot (boot-tested) na placa StarFive VisionFive v1.2A

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Divulgação

11/09/2026

Moderação

em revisão

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Do you want to use VulDB in your project?

Use the official API to access entries easily!