On Sat, May 04, 2024 at 06:25:33PM +0200, Hans de Goede wrote: > Triggers which have trigger specific sysfs attributes typically store > related data in trigger-data allocated by the activate() callback and > freed by the deactivate() callback. > > Calling device_remove_groups() after calling deactivate() leaves a window > where the sysfs attributes show/store functions could be called after > deactivation and then operate on the just freed trigger-data. > > Move the device_remove_groups() call to before deactivate() to close > this race window. > > This also makes the deactivation path properly do things in reverse order > of the activation path which calls the activate() callback before calling > device_add_groups(). > > Fixes: a7e7a3156300 ("leds: triggers: add device attribute support") > Cc: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> Looks reasonable Acked-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> Thanks Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |
Attachment:
signature.asc
Description: PGP signature