* [PATCH 2/2] sh_eth: kill redundant check in the probe() method
@ 2017-12-31 18:41 Sergei Shtylyov
2018-01-02 7:54 ` Geert Uytterhoeven
0 siblings, 1 reply; 2+ messages in thread
From: Sergei Shtylyov @ 2017-12-31 18:41 UTC (permalink / raw)
To: netdev, "open list:RENESAS ETHERNET DRIVERS"; +Cc: Sergei Shtylyov
[-- Attachment #1: sh_eth-kill-redundant-check-in-the-probe-method.patch --]
[-- Type: text/plain, Size: 860 bytes --]
Browsing thru the driver diassembly, I noticed that gcc was able to
figure out that the 'ndev' pointer is always non-NULL when calling
free_netdev() on the probe() method's error path and thus skip that
redundant NULL check... gcc is smart, be like gcc! :-)
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
---
drivers/net/ethernet/renesas/sh_eth.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
Index: net-next/drivers/net/ethernet/renesas/sh_eth.c
===================================================================
--- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c
+++ net-next/drivers/net/ethernet/renesas/sh_eth.c
@@ -3282,8 +3282,7 @@ out_napi_del:
out_release:
/* net_dev free */
- if (ndev)
- free_netdev(ndev);
+ free_netdev(ndev);
pm_runtime_put(&pdev->dev);
pm_runtime_disable(&pdev->dev);
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH 2/2] sh_eth: kill redundant check in the probe() method
2017-12-31 18:41 [PATCH 2/2] sh_eth: kill redundant check in the probe() method Sergei Shtylyov
@ 2018-01-02 7:54 ` Geert Uytterhoeven
0 siblings, 0 replies; 2+ messages in thread
From: Geert Uytterhoeven @ 2018-01-02 7:54 UTC (permalink / raw)
To: Sergei Shtylyov; +Cc: netdev, open list:RENESAS ETHERNET DRIVERS
H Sergei,
On Sun, Dec 31, 2017 at 7:41 PM, Sergei Shtylyov
<sergei.shtylyov@cogentembedded.com> wrote:
> Browsing thru the driver diassembly, I noticed that gcc was able to
> figure out that the 'ndev' pointer is always non-NULL when calling
> free_netdev() on the probe() method's error path and thus skip that
> redundant NULL check... gcc is smart, be like gcc! :-)
Thanks for your patch!
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
> --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c
> +++ net-next/drivers/net/ethernet/renesas/sh_eth.c
> @@ -3282,8 +3282,7 @@ out_napi_del:
>
> out_release:
> /* net_dev free */
> - if (ndev)
> - free_netdev(ndev);
> + free_netdev(ndev);
>
> pm_runtime_put(&pdev->dev);
> pm_runtime_disable(&pdev->dev);
BTW, there isn't a functional dependency, but you may want to move the
freeing of the netdev below disabling of Runtime PM for symmetry (use
reverse order in cleanup).
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-01-02 7:54 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-31 18:41 [PATCH 2/2] sh_eth: kill redundant check in the probe() method Sergei Shtylyov
2018-01-02 7:54 ` Geert Uytterhoeven
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).