netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: arvind.yadav.cs@gmail.com
Cc: wg@grandegger.com, mkl@pengutronix.de, michal.simek@xilinx.com,
	opendmb@gmail.com, f.fainelli@gmail.com,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, netdev@vger.kernel.org
Subject: Re: [PATCH 4/7 v2] net: ethernet: i825xx: Fix platform_get_irq's error checking
Date: Mon, 04 Dec 2017 13:25:56 -0500 (EST)	[thread overview]
Message-ID: <20171204.132556.1601454745789376393.davem@davemloft.net> (raw)
In-Reply-To: <1512409703-20881-5-git-send-email-arvind.yadav.cs@gmail.com>

From: Arvind Yadav <arvind.yadav.cs@gmail.com>
Date: Mon,  4 Dec 2017 23:18:20 +0530

> @@ -120,9 +120,10 @@ static int sni_82596_probe(struct platform_device *dev)
>  	netdevice->dev_addr[5] = readb(eth_addr + 0x06);
>  	iounmap(eth_addr);
>  
> -	if (!netdevice->irq) {
> +	if (netdevice->irq <= 0) {
>  		printk(KERN_ERR "%s: IRQ not found for i82596 at 0x%lx\n",
>  			__FILE__, netdevice->base_addr);
> +		retval = netdevice->irq ? netdevice->irq : -ENODEV;
>  		goto probe_failed;
>  	}

Ok, thinking about this some more...

It is impossible to use platform_get_irq() without every single call
site having this funny:

	ret = val ? val : -ENODEV;

sequence.

This is unnecessary duplication and it is also error prone, so I
really think this logic belongs in platform_get_irq() itself.  It can
convert '0' to -ENODEV and that way we need no special logic in the
callers at all.

  reply	other threads:[~2017-12-04 18:25 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-04 17:48 [PATCH 0/7 v2] net: Fix platform_get_irq's error checking Arvind Yadav
2017-12-04 17:48 ` [PATCH 1/7 v2] net: bcmgenet: " Arvind Yadav
2017-12-05  1:01   ` Doug Berger
2017-12-04 17:48 ` [PATCH 2/7 v2] net: ezchip: nps_enet: " Arvind Yadav
2017-12-04 17:48 ` [PATCH 3/7 v2] can: xilinx: " Arvind Yadav
2017-12-04 17:48 ` [PATCH 4/7 v2] net: ethernet: i825xx: " Arvind Yadav
2017-12-04 18:25   ` David Miller [this message]
2017-12-05  5:34     ` Arvind Yadav
2017-12-05 15:49       ` David Miller
2017-12-06 12:19         ` Sergei Shtylyov
2017-12-08  9:38           ` arvindY
2017-12-05 10:12     ` Sergei Shtylyov
2017-12-05 10:58       ` Russell King - ARM Linux
2017-12-04 17:48 ` [PATCH 5/7 v2] net: ethernet: natsemi: " Arvind Yadav
2017-12-04 17:48 ` [PATCH 6/7 v2] net: ethernet: smsc: " Arvind Yadav
2017-12-04 17:48 ` [PATCH 7/7 v2] net: fjes: " Arvind Yadav
2017-12-05  9:54 ` [PATCH 0/7 v2] net: " Sergei Shtylyov
2017-12-05  9:57   ` Sergei Shtylyov
2017-12-05 10:02     ` Arvind Yadav

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171204.132556.1601454745789376393.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=arvind.yadav.cs@gmail.com \
    --cc=f.fainelli@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michal.simek@xilinx.com \
    --cc=mkl@pengutronix.de \
    --cc=netdev@vger.kernel.org \
    --cc=opendmb@gmail.com \
    --cc=wg@grandegger.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).