Re: [PATCH v4 3/3] spi: geni-qcom: Use devm functions to simplify code

From: Jinjie Ruan
Date: Fri Sep 13 2024 - 21:18:15 EST




On 2024/9/14 0:27, Doug Anderson wrote:
> Hi,
>
> On Thu, Sep 12, 2024 at 11:44 PM Jinjie Ruan <ruanjinjie@xxxxxxxxxx> wrote:
>>
>> On 2024/9/12 21:38, Doug Anderson wrote:
>>> Hi,
>>>
>>> On Wed, Sep 11, 2024 at 8:53 PM Jinjie Ruan <ruanjinjie@xxxxxxxxxx> wrote:
>>>>
>>>>>> @@ -1132,6 +1134,12 @@ static int spi_geni_probe(struct platform_device *pdev)
>>>>>> if (ret)
>>>>>> return ret;
>>>>>>
>>>>>> + ret = devm_add_action_or_reset(dev, spi_geni_release_dma_chan, mas);
>>>>>> + if (ret) {
>>>>>> + dev_err(dev, "Unable to add action.\n");
>>>>>> + return ret;
>>>>>> + }
>>>>>
>>>>> Use dev_err_probe() to simplify.
>>>>>
>>>>> ret = devm_add_action_or_reset(dev, spi_geni_release_dma_chan, mas);
>>>>> if (ret)
>>>>> return dev_err_probe(dev, ret, "Unable to add action.\n");
>>>>
>>>> It seems that if it only return -ENOMEM or 0, using dev_err_probe() has
>>>> not not much value for many community maintainers.
>>>
>>> While I won't insist, it still has some value to use dev_err_probe()
>>> as I talked about in commit 7065f92255bb ("driver core: Clarify that
>>> dev_err_probe() is OK even w/out -EPROBE_DEFER")
>> The main difference is that when use dev_err_probe(),there will print
>> anything on -ENOMEM now.
>
> Oh, I see. You're saying that we should just get rid of the print
> altogether because the only error case is -ENOMEM and the kernel
> already splats there? Yeah, that sounds right to me. That doesn't
> match what you did in v5, though...

I think the following 2 soultion is both fine:

1、return ret directly.

2、dev_err() and return.

>
> -Doug