Activity log
- Created & dismissed (max. allowed matches exceeded) suggestion
irqchip/ts4800: Fix missing chained handler cleanup on remove
In the Linux kernel, the following vulnerability has been resolved: irqchip/ts4800: Fix missing chained handler cleanup on remove The driver installs a chained handler for the parent interrupt during probe using irq_set_chained_handler_and_data(), but the remove function does not clear this handler. This leaves a dangling handler that may be called when the parent interrupt fires after the driver has been removed, potentially accessing freed memory and causing a kernel crash. Additionally, the parent_irq obtained via irq_of_parse_and_map() is not stored, making it inaccessible in the remove function. Moreover, interrupt mappings created during probe are not properly disposed. Fix this by: - Saving parent_irq in probe - Clearing the chained handler with NULL in ts4800_ic_remove() - Disposing all IRQ mappings before domain removal to prevent resource leaks
References
Affected products
- <e6b674dc341c6add7d85bec2ec22caf1aad35795
- ==4.5
- =<6.6.*
- =<*
- <b5b2b2cb6a91908e6c23958c9ce6d5ba2fdb686c
- <4.5
- <3f31f49afffa169cd01e6c37568c4df3eb1051af
- =<6.12.*
- <4e8d498d32b6c67d73bb8b317ff316ff37897a3e
- <98bf7e54cec07d514b3575c11896a8b12d50ecc4
- =<6.18.*
- =<7.1.*
- =<6.1.*
- <9ed0dca2aa05908b33ecf0bb15c7953947529542