Re: [PATCH net-next] net: ethernet: ti: am65-cpsw: Fix PM runtime leakage in am65_cpsw_nuss_ndo_slave_open()
From: Roger Quadros
Date: Mon Dec 12 2022 - 04:22:57 EST
On 10/12/2022 02:54, Saeed Mahameed wrote:
> On 08 Dec 12:55, Roger Quadros wrote:
>> Ensure pm_runtime_put() is issued in error path.
>>
>> Reported-by: Jakub Kicinski <kuba@xxxxxxxxxx>
>> Signed-off-by: Roger Quadros <rogerq@xxxxxxxxxx>
>
>
> Reviewed-by: Saeed Mahameed <saeed@xxxxxxxxxx>
>
>
> [...]
>
>> @@ -622,6 +623,10 @@ static int am65_cpsw_nuss_ndo_slave_open(struct net_device *ndev)
>> error_cleanup:
>> am65_cpsw_nuss_ndo_slave_stop(ndev);
>
> BTW, while looking at the ndo_slave_stop() call, it seems to abort if am65_cpsw_nuss_common_stop() fails, but looking deeper at that and it seems am65_cpsw_nuss_common_stop() can never fail, so you might want to fix that.
You mean we should change it to return void and get rid of error checks on that function. Right?
>
>> return ret;
>> +
>> +runtime_put:
>> + pm_runtime_put(common->dev);
>> + return ret;
>> }
>>
>> static void am65_cpsw_nuss_rx_cleanup(void *data, dma_addr_t desc_dma)
>> --
>> 2.34.1
>>
cheers,
-roger