On Mon, Dec 23, 2024 at 08:41:12PM +0530, Atharva Tiwari wrote: > Previously,the module was freed without detaching it from the list which could lead to memory leak > this patch uses list_del to safely remove the module from the list > > Signed-off-by: Atharva Tiwari <evepolonium@xxxxxxxxx> > --- > drivers/staging/greybus/audio_manager_module.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/greybus/audio_manager_module.c b/drivers/staging/greybus/audio_manager_module.c > index 4a4dfb42f50f..7e52c3f95692 100644 > --- a/drivers/staging/greybus/audio_manager_module.c > +++ b/drivers/staging/greybus/audio_manager_module.c > @@ -69,7 +69,8 @@ static void gb_audio_module_release(struct kobject *kobj) > struct gb_audio_manager_module *module = to_gb_audio_module(kobj); > > pr_info("Destroying audio module #%d\n", module->id); > - /* TODO -> delete from list */ > + if (module->list.prev && module->list.next) For lists, you really shouldn't poke around in the prev and next pointers, right? Have you tested this? This feels like an odd change, is it a real system that is using this code anymore? thanks, greg k-h _______________________________________________ greybus-dev mailing list -- greybus-dev@xxxxxxxxxxxxxxxx To unsubscribe send an email to greybus-dev-leave@xxxxxxxxxxxxxxxx