On Tue, Aug 04, 2026 at 07:54:57AM +0800, Shengzhuo Wei wrote:
On 2026-08-03 16:33, Dmitry Torokhov wrote:
quoted
What stops these jobs from re-arming? Should it use
disable_delayed_work_sync() instead?
Agreed — cancel_delayed_work_sync() only drains the running instance; it
doesn't stop the works from being re-queued from the raw_event / sysfs /
LED-brightness paths before the device is fully torn down, so the UAF
window isn't closed. I'll switch all three calls to
disable_delayed_work_sync() in v2.
Do you have any other comments you'd like addressed in v2?
Since you are addressing work-related UAF, fixing it on probe failures
would be nice (Sashiko mentioned it).
The other Sahiko comment regarding global instance would be nice to get
fixed as well (but separate patch and only if you have
time/inclination).
Another potential change is not to create device attribute group by hand
but attach it to the driver structure so it is created and torn down
automatically, and control visibility of the attributes through
is_visible() method.
Thanks.
--
Dmitry