Description
In the Linux kernel, the following vulnerability has been resolved: rust_binder: reschedule node refcount update on thread exit When a thread exits via BINDER_THREAD_EXIT, its pending work items are cancelled. If a thread exits while holding a pending node refcount increment (e.g. pushed as deferred work to that thread), the refcount increment was previously dropped because Node::cancel() and NodeWrapper::cancel() were no-ops. Dropping the refcount update leaves the node-s delivery state and count state desynchronized, and userspace will not receive the notification, which can cause the node to never be freed from the process-s nodes tree when all external references are dropped. Fix this by implementing DeliverToRead::cancel() for Node and NodeWrapper to move the pending refcount update to the process-s work queue on thread exit so another thread can deliver it to userspace.
- Versions concernées
- unknown
- Type
- Noyau
- Dernière modification
- 2026-10-23 13:17:31