[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8f6f1dc9-8b14-442c-8999-934ac312a1bd@opensource.cirrus.com>
Date: Mon, 1 Dec 2025 09:57:16 +0000
From: Richard Fitzgerald <rf@...nsource.cirrus.com>
To: Krzysztof Kozlowski <krzk@...nel.org>, broonie@...nel.org
Cc: linux-sound@...r.kernel.org, linux-kernel@...r.kernel.org,
patches@...nsource.cirrus.com
Subject: Re: [PATCH] ASoC: cs-amp-lib: Use __free(kfree) instead of manual
freeing
On 29/11/2025 2:28 pm, Krzysztof Kozlowski wrote:
> On 27/11/2025 16:58, Richard Fitzgerald wrote:
>> Use the __free(kfree) cleanup to replace instances of manually
>> calling kfree(). Also make some code path simplifications that this
>> allows.
>>
>> Signed-off-by: Richard Fitzgerald <rf@...nsource.cirrus.com>
>> ---
>> sound/soc/codecs/cs-amp-lib.c | 29 ++++++++++++-----------------
>> 1 file changed, 12 insertions(+), 17 deletions(-)
>>
>> diff --git a/sound/soc/codecs/cs-amp-lib.c b/sound/soc/codecs/cs-amp-lib.c
>> index d8f8b0259cd1..8c9fd9980a7d 100644
>> --- a/sound/soc/codecs/cs-amp-lib.c
>> +++ b/sound/soc/codecs/cs-amp-lib.c
>> @@ -7,6 +7,7 @@
>>
>> #include <asm/byteorder.h>
>> #include <kunit/static_stub.h>
>> +#include <linux/cleanup.h>
>> #include <linux/debugfs.h>
>> #include <linux/dev_printk.h>
>> #include <linux/efi.h>
>> @@ -309,9 +310,8 @@ static struct cirrus_amp_efi_data *cs_amp_get_cal_efi_buffer(struct device *dev,
>> efi_guid_t **guid,
>> u32 *attr)
>> {
>> - struct cirrus_amp_efi_data *efi_data;
>> + struct cirrus_amp_efi_data *efi_data __free(kfree) = NULL;
>
> This is an undesired syntax explicitly documented as one to avoid. You
> need here proper assignment, not NULL. Please don't use cleanup.h if you
> do not intend to follow it because it does not make the code simpler.
>
LOL
The new system to improve cleanup introduces new cleanup bugs. :)
>
> Best regards,
> Krzysztof
Powered by blists - more mailing lists