[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <181feb34-c46d-cadb-ad20-46074a53b4c9@suse.com>
Date: Thu, 23 Mar 2023 14:48:56 +0100
From: Oliver Neukum <oneukum@...e.com>
To: Dan Carpenter <error27@...il.com>, Oliver Neukum <oneukum@...e.com>
Cc: Sergei Shtylyov <sergei.shtylyov@...il.com>,
Mingxuan Xiang <mx_xiang@...t.edu.cn>,
Thinh Nguyen <Thinh.Nguyen@...opsys.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
hust-os-kernel-patches@...glegroups.com,
Dongliang Mu <dzm91@...t.edu.cn>, linux-usb@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] usb: dwc3: host: remove dead code in
dwc3_host_get_irq()
On 23.03.23 12:13, Dan Carpenter wrote:
>>>> v1->v2: remove redundant goto
>>>> drivers/usb/dwc3/host.c | 4 ----
>>>> 1 file changed, 4 deletions(-)
>>>>
>>>> diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c
>>>> index f6f13e7f1ba1..ca1e8294e835 100644
>>>> --- a/drivers/usb/dwc3/host.c
>>>> +++ b/drivers/usb/dwc3/host.c
>>>> @@ -54,12 +54,8 @@ static int dwc3_host_get_irq(struct dwc3 *dwc)
>>>> irq = platform_get_irq(dwc3_pdev, 0);
>>>> if (irq > 0) {
>>>> dwc3_host_fill_xhci_irq_res(dwc, irq, NULL);
>>>> - goto out;
>>>> }
>>>
>>> Now drop {} please. :-)
>>
>> Well, no, please drop the whole patch.
>> If platform_get_irq() returns -EPROBE_DEFER you now give that
>> as a return value.
>>
>> This tiny bit of optimization is not worth changing semantics.
>
> The v2 patch doesn't change the semantics. Mine did though...
Now I may be dense, but let's look at the current code:
irq = platform_get_irq(dwc3_pdev, 0);
assuming irq = -EPROBE_DEFER
if (irq > 0) {
not taken
dwc3_host_fill_xhci_irq_res(dwc, irq, NULL);
goto out;
}
if (!irq)
irq != 0
irq = -EINVAL;
out:
return irq;
returning -EINVAL
Patched version:
irq = platform_get_irq(dwc3_pdev, 0);
assuming irq = -EPROBE_DEFER
if (irq > 0) {
dwc3_host_fill_xhci_irq_res(dwc, irq, NULL);
}
out:
return irq;
returning -EPROBE_DEFER
Your version:
irq = platform_get_irq(dwc3_pdev, 0);
assuming irq = -EPROBE_DEFER
if (irq > 0) {
not taken
dwc3_host_fill_xhci_irq_res(dwc, irq, NULL);
+ return irq;
}
+ return -ENODEV;
Yet another error return.
Now, I admit I am by now sufficiently confused to know which version is
correct, but they are all three different in what they return.
Regards
Oliver
Powered by blists - more mailing lists