Re: [PATCH] power: supply: twl4030_charger: cancel workers via devm
From: Sebastian Reichel
Date: Sat Jul 25 2026 - 12:16:41 EST
On Sat, 25 Jul 2026 15:25:40 +0800, Maoyi Xie wrote:
> bci is devm-allocated. Two workers (bci->work and bci->current_worker)
> dereference it. twl4030_bci_remove() disables charging and masks
> interrupts. It cancels neither worker. A worker pending at remove() can
> run after devm frees bci.
>
> The USB transceiver comes from devm_usb_get_phy_by_node(). devm
> unregisters its notifier only after remove() returns. A cancel_work_sync()
> in remove() can then race a notifier reschedule. devm_work_autocancel()
> and devm_delayed_work_autocancel() avoid that. They cancel the workers
> during devm release, before bci is freed.
>
> [...]
Applied, thanks!
[1/1] power: supply: twl4030_charger: cancel workers via devm
commit: 6eba34732524067da2aad5ddfdfbc641ded10e9e
Best regards,
--
Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>