Description
In the Linux kernel, the following vulnerability has been resolved: irqchip/renesas-irqc: Fix generic interrupt chip leak on remove The driver allocates domain generic chips probe. However, on driver removal, the generic chips are not automatically freed when the interrupt domain is removed because the domain flags do not include IRQ_DOMAIN_FLAG_DESTROY_GC. This causes both the domain generic chips structure and the associated generic chips to be leaked. Additionally, the generic chips remain on the global list and may later be accessed by generic interrupt chip suspend, resume, or shutdown callbacks after the driver has been removed, potentially resulting in a use-after-free and kernel crash. Fix the resource leak by setting IRQ_DOMAIN_FLAG_DESTROY_GC on the interrupt domain; this lets the interrupt domain core automatically release all generic chips when irq_domain_remove() is invoked, removing the need for manual cleanup calls in error paths and remove callback.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
99c221df33fbfa1b30e15dee879eb0a9ae1be353 to < 3d39757ef791f90028da9c8b7c1fbbb497237e58affected99c221df33fbfa1b30e15dee879eb0a9ae1be353 to < 4bf7614d048434326081eef0ebef33cb77fe2ffcaffected99c221df33fbfa1b30e15dee879eb0a9ae1be353 to < 9acc996cb2e8477ae81bd7c067fec15202d6bc89affected99c221df33fbfa1b30e15dee879eb0a9ae1be353 to < 7c614f83301d464e2fb498d63552490d137ea10daffected99c221df33fbfa1b30e15dee879eb0a9ae1be353 to < 616dd89d81ad9a3cf1cfff4088a4c43e4e00d6baaffected
Linux Linux
Default version status: affected
4.4affected0 to < 4.4unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.52 to ≤ 6.18.*unaffected7.2.6 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/3d39757ef791f90028da9c8b7c1fbbb497237e58 ↗
- https://git.kernel.org/stable/c/4bf7614d048434326081eef0ebef33cb77fe2ffc ↗
- https://git.kernel.org/stable/c/9acc996cb2e8477ae81bd7c067fec15202d6bc89 ↗
- https://git.kernel.org/stable/c/7c614f83301d464e2fb498d63552490d137ea10d ↗
- https://git.kernel.org/stable/c/616dd89d81ad9a3cf1cfff4088a4c43e4e00d6ba ↗