[PATCH] ASoC: SOF: Convert to platform remove callback returning void

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Tue Oct 10 06:29:22 PDT 2023



On 10/10/23 07:00, Daniel Baluta wrote:
> On Mon, Oct 9, 2023 at 7:03 PM Uwe Kleine-König
> <u.kleine-koenig at pengutronix.de> wrote:
>>
>> The .remove() callback for a platform driver returns an int which makes
>> many driver authors wrongly assume it's possible to do error handling by
>> returning an error code. However the value returned is ignored (apart
>> from emitting a warning) and this typically results in resource leaks.
>>
>> To improve here there is a quest to make the remove callback return
>> void. In the first step of this quest all drivers are converted to
>> .remove_new(), which already returns void. Eventually after all drivers
>> are converted, .remove_new() will be renamed to .remove().
>>
>> The SOF platform drivers all use either sof_of_remove() or
>> sof_acpi_remove() which both return zero unconditionally. Change these
>> functions to return void and the drivers to use .remove_new(). There is
>> no semantical change.
>>
>> Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> 
> 
> 
> Reviewed-by: Daniel Baluta <daniel.baluta at nxp.com>

Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>

FWIW I have a follow-up patch to convert the SOF remove ops to return
void: https://github.com/thesofproject/linux/pull/4625



More information about the Linux-mediatek mailing list