[PATCH] coresight: etm4x: return 0 instead of using local ret variable

Shile Zhang shile.zhang at linux.alibaba.com
Thu Apr 21 18:43:44 PDT 2022



On 2022/4/22 00:42, Mathieu Poirier wrote:
> Hi Shile,
> 
> On Wed, Apr 20, 2022 at 01:28:31PM +0800, Shile Zhang wrote:
>> The etm4_remove function (now it's rename to etm4_remove_dev) always
>> return 0, and it has been changed to void in commit 4fd269e74f2f
>> ("amba: Make the remove callback return void"). But its weird that the
>> changes is gone in mainline. which is remained in 5.10.y branch.
> 
> Commit 4fd269e74f2f is not valid upstream.  Changes that don't have a critical
> impact on user experience or fix a bug aren't backported to longterm kernels.
> 
Sorry, I used wrong commit id, but this patch is merged in mainline with 
3fd269e74f2fe ("amba: Make the remove callback return void")

It can be checked from here: 
https://github.com/torvalds/linux/commit/3fd269e74f2fe#diff-937c525e02a9fea8fe99b3d91b9f87ca097b3392de5fea3d4ff56cec8b08c94aL1683

>>
>> Just backport the changes of etm4_remove_dev and return 0 directly in it's
>> caller function etm4_remove_platform_dev.
> 
> I'm not sure why the work "backport" is used here since this patch is destine
> for mainline.
> 
Yes, maybe "backport" here is not OK, I'll re-work it in next version 
later. Thanks!

>>
>> Signed-off-by: Shile Zhang <shile.zhang at linux.alibaba.com>
>> ---
>>   drivers/hwtracing/coresight/coresight-etm4x-core.c | 11 +++++------
>>   1 file changed, 5 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/hwtracing/coresight/coresight-etm4x-core.c b/drivers/hwtracing/coresight/coresight-etm4x-core.c
>> index 7f416a12000e..141f8209a152 100644
>> --- a/drivers/hwtracing/coresight/coresight-etm4x-core.c
>> +++ b/drivers/hwtracing/coresight/coresight-etm4x-core.c
>> @@ -2104,7 +2104,7 @@ static void clear_etmdrvdata(void *info)
>>   	etmdrvdata[cpu] = NULL;
>>   }
>>   
>> -static int __exit etm4_remove_dev(struct etmv4_drvdata *drvdata)
>> +static void __exit etm4_remove_dev(struct etmv4_drvdata *drvdata)
>>   {
>>   	etm_perf_symlink(drvdata->csdev, false);
>>   	/*
>> @@ -2125,8 +2125,6 @@ static int __exit etm4_remove_dev(struct etmv4_drvdata *drvdata)
>>   
>>   	cscfg_unregister_csdev(drvdata->csdev);
>>   	coresight_unregister(drvdata->csdev);
>> -
>> -	return 0;
>>   }
>>   
>>   static void __exit etm4_remove_amba(struct amba_device *adev)
>> @@ -2139,13 +2137,14 @@ static void __exit etm4_remove_amba(struct amba_device *adev)
>>   
>>   static int __exit etm4_remove_platform_dev(struct platform_device *pdev)
>>   {
>> -	int ret = 0;
>>   	struct etmv4_drvdata *drvdata = dev_get_drvdata(&pdev->dev);
>>   
>>   	if (drvdata)
>> -		ret = etm4_remove_dev(drvdata);
>> +		etm4_remove_dev(drvdata);
>> +
>>   	pm_runtime_disable(&pdev->dev);
>> -	return ret;
>> +
>> +	return 0;
> 
> I'm fine with the code but the changelog needs to be re-worked.  The only
> rational for this patch is that the return value for function etm4_remove_dev()
> is never used and as such being removed.
> 
Thanks for your comments, I'll send V2 later.

> Thanks,
> Mathieu
> 
>>   }
>>   
>>   static const struct amba_id etm4_ids[] = {
>> -- 
>> 2.33.0.rc2
>>



More information about the linux-arm-kernel mailing list