]> asedeno.scripts.mit.edu Git - linux.git/commit
power: supply: max14656: fix potential use-after-free
authorSven Van Asbroeck <thesven73@gmail.com>
Fri, 15 Feb 2019 21:43:03 +0000 (16:43 -0500)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Fri, 5 Apr 2019 16:01:38 +0000 (18:01 +0200)
commit252fbeb86ceffa549af9842cefca2412d53a7653
treea69dc531ba921563ac47a52f938351ef12781470
parent0cd0e49711556d2331a06b1117b68dd786cb54d2
power: supply: max14656: fix potential use-after-free

Explicitly cancel/sync the irq_work delayed work, otherwise
there's a chance that it will run after the device is removed,
which would result in a use-after-free.

Note that cancel/sync should happen:
- after irq's have been disabled, as the isr re-schedules the work
- before the power supply is unregistered, because the work func
    uses the power supply handle.

Cc: Alexander Kurz <akurz@blala.de>
Signed-off-by: Sven Van Asbroeck <TheSven73@gmail.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/max14656_charger_detector.c