linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] Handle return value of platform_get_irq
@ 2017-11-30 15:43 Arvind Yadav
  2017-11-30 15:43 ` [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking Arvind Yadav
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Arvind Yadav @ 2017-11-30 15:43 UTC (permalink / raw)
  To: lars, Michael.Hennerich, jic23, knaack.h, pmeerw, gregkh, samuel
  Cc: linux-kernel, linux-iio, devel, netdev

The platform_get_irq() function returns negative if an error occurs.
zero or positive number on success. platform_get_irq() error checking
for zero is not correct.

Remove unnecessary 'err' initialization for irda driver.

Arvind Yadav (3):
  [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking
  [PATCH 2/3] staging: irda: Handle return value of platform_get_irq
  [PATCH 3/3] staging: irda: Remove unnecessary 'err' initialization.

 drivers/staging/iio/trigger/iio-trig-bfin-timer.c |  4 ++--
 drivers/staging/irda/drivers/pxaficp_ir.c         | 11 ++++++++++-
 2 files changed, 12 insertions(+), 3 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking
  2017-11-30 15:43 [PATCH 0/3] Handle return value of platform_get_irq Arvind Yadav
@ 2017-11-30 15:43 ` Arvind Yadav
  2017-12-02 12:22   ` Jonathan Cameron
  2017-11-30 15:43 ` [PATCH 2/3] staging: irda: Handle return value of platform_get_irq Arvind Yadav
  2017-11-30 15:43 ` [PATCH 3/3] staging: irda: Remove unnecessary 'err' initialization Arvind Yadav
  2 siblings, 1 reply; 7+ messages in thread
From: Arvind Yadav @ 2017-11-30 15:43 UTC (permalink / raw)
  To: lars, Michael.Hennerich, jic23, knaack.h, pmeerw, gregkh, samuel
  Cc: linux-kernel, linux-iio, devel, netdev

The platform_get_irq() function returns negative if an error occurs.
zero or positive number on success. platform_get_irq() error checking
for zero is not correct.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
---
 drivers/staging/iio/trigger/iio-trig-bfin-timer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/iio/trigger/iio-trig-bfin-timer.c b/drivers/staging/iio/trigger/iio-trig-bfin-timer.c
index d80dcf8..f389f5c 100644
--- a/drivers/staging/iio/trigger/iio-trig-bfin-timer.c
+++ b/drivers/staging/iio/trigger/iio-trig-bfin-timer.c
@@ -187,9 +187,9 @@ static int iio_bfin_tmr_trigger_probe(struct platform_device *pdev)
 		return -ENOMEM;
 
 	st->irq = platform_get_irq(pdev, 0);
-	if (!st->irq) {
+	if (st->irq < 0) {
 		dev_err(&pdev->dev, "No IRQs specified");
-		return -ENODEV;
+		return st->irq;
 	}
 
 	ret = iio_bfin_tmr_get_number(st->irq);
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/3] staging: irda: Handle return value of platform_get_irq
  2017-11-30 15:43 [PATCH 0/3] Handle return value of platform_get_irq Arvind Yadav
  2017-11-30 15:43 ` [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking Arvind Yadav
@ 2017-11-30 15:43 ` Arvind Yadav
  2017-11-30 16:41   ` Greg KH
  2017-11-30 15:43 ` [PATCH 3/3] staging: irda: Remove unnecessary 'err' initialization Arvind Yadav
  2 siblings, 1 reply; 7+ messages in thread
From: Arvind Yadav @ 2017-11-30 15:43 UTC (permalink / raw)
  To: lars, Michael.Hennerich, jic23, knaack.h, pmeerw, gregkh, samuel
  Cc: linux-kernel, linux-iio, devel, netdev

platform_get_irq() can fail here and we must check its return value.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
---
 drivers/staging/irda/drivers/pxaficp_ir.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/staging/irda/drivers/pxaficp_ir.c b/drivers/staging/irda/drivers/pxaficp_ir.c
index 1dba16b..a97ce04 100644
--- a/drivers/staging/irda/drivers/pxaficp_ir.c
+++ b/drivers/staging/irda/drivers/pxaficp_ir.c
@@ -960,7 +960,17 @@ static int pxa_irda_probe(struct platform_device *pdev)
 	si->irda_base = ficp;
 	si->stuart_base = stuart;
 	si->uart_irq = platform_get_irq(pdev, 0);
+	if (si->uart_irq < 0) {
+		err =  si->uart_irq;
+		goto err_mem_1;
+	}
+
 	si->icp_irq = platform_get_irq(pdev, 1);
+	if (si->icp_irq < 0) {
+		err =  si->icp_irq;
+		goto err_mem_1;
+	}
+
 
 	si->sir_clk = devm_clk_get(&pdev->dev, "UARTCLK");
 	si->fir_clk = devm_clk_get(&pdev->dev, "FICPCLK");
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/3] staging: irda: Remove unnecessary 'err' initialization.
  2017-11-30 15:43 [PATCH 0/3] Handle return value of platform_get_irq Arvind Yadav
  2017-11-30 15:43 ` [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking Arvind Yadav
  2017-11-30 15:43 ` [PATCH 2/3] staging: irda: Handle return value of platform_get_irq Arvind Yadav
@ 2017-11-30 15:43 ` Arvind Yadav
  2 siblings, 0 replies; 7+ messages in thread
From: Arvind Yadav @ 2017-11-30 15:43 UTC (permalink / raw)
  To: lars, Michael.Hennerich, jic23, knaack.h, pmeerw, gregkh, samuel
  Cc: linux-kernel, linux-iio, devel, netdev

Here, variable 'err' is already initialised. So no need to reinitialize.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
---
 drivers/staging/irda/drivers/pxaficp_ir.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/staging/irda/drivers/pxaficp_ir.c b/drivers/staging/irda/drivers/pxaficp_ir.c
index a97ce04..6c77370 100644
--- a/drivers/staging/irda/drivers/pxaficp_ir.c
+++ b/drivers/staging/irda/drivers/pxaficp_ir.c
@@ -807,7 +807,6 @@ static int pxa_irda_start(struct net_device *dev)
 	 * Open a new IrLAP layer instance.
 	 */
 	si->irlap = irlap_open(dev, &si->qos, "pxa");
-	err = -ENOMEM;
 	if (!si->irlap)
 		goto err_irlap;
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/3] staging: irda: Handle return value of platform_get_irq
  2017-11-30 15:43 ` [PATCH 2/3] staging: irda: Handle return value of platform_get_irq Arvind Yadav
@ 2017-11-30 16:41   ` Greg KH
  2017-11-30 16:45     ` arvindY
  0 siblings, 1 reply; 7+ messages in thread
From: Greg KH @ 2017-11-30 16:41 UTC (permalink / raw)
  To: Arvind Yadav
  Cc: lars, Michael.Hennerich, jic23, knaack.h, pmeerw, samuel,
	linux-iio, devel, linux-kernel, netdev

On Thu, Nov 30, 2017 at 09:13:35PM +0530, Arvind Yadav wrote:
> platform_get_irq() can fail here and we must check its return value.
> 
> Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
> ---
>  drivers/staging/irda/drivers/pxaficp_ir.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)

Did you read drivers/staging/irda/TODO?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/3] staging: irda: Handle return value of platform_get_irq
  2017-11-30 16:41   ` Greg KH
@ 2017-11-30 16:45     ` arvindY
  0 siblings, 0 replies; 7+ messages in thread
From: arvindY @ 2017-11-30 16:45 UTC (permalink / raw)
  To: Greg KH
  Cc: lars, Michael.Hennerich, jic23, knaack.h, pmeerw, samuel,
	linux-iio, devel, linux-kernel, netdev

Hi Greg,

On Thursday 30 November 2017 10:11 PM, Greg KH wrote:
> On Thu, Nov 30, 2017 at 09:13:35PM +0530, Arvind Yadav wrote:
>> platform_get_irq() can fail here and we must check its return value.
>>
>> Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
>> ---
>>   drivers/staging/irda/drivers/pxaficp_ir.c | 10 ++++++++++
>>   1 file changed, 10 insertions(+)
> Did you read drivers/staging/irda/TODO?
Sorry, Now I have read it. :(
>
> thanks,
>
> greg k-h
Thanks,
~arvind

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking
  2017-11-30 15:43 ` [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking Arvind Yadav
@ 2017-12-02 12:22   ` Jonathan Cameron
  0 siblings, 0 replies; 7+ messages in thread
From: Jonathan Cameron @ 2017-12-02 12:22 UTC (permalink / raw)
  To: Arvind Yadav
  Cc: lars, Michael.Hennerich, knaack.h, pmeerw, gregkh, samuel,
	linux-kernel, linux-iio, devel, netdev

On Thu, 30 Nov 2017 21:13:34 +0530
Arvind Yadav <arvind.yadav.cs@gmail.com> wrote:

> The platform_get_irq() function returns negative if an error occurs.
> zero or positive number on success. platform_get_irq() error checking
> for zero is not correct.
> 
> Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Applied to the togreg branch of iio.git.  This is probably just
a theoretical problem as obviously the blackfin trigger only runs
on blackfin boards and I assume they only return 0.

Anyhow, nothing wrong with tidying it up as might possible get
cut and paste to somewhere it does matter in future!

Jonathan

> ---
>  drivers/staging/iio/trigger/iio-trig-bfin-timer.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/staging/iio/trigger/iio-trig-bfin-timer.c b/drivers/staging/iio/trigger/iio-trig-bfin-timer.c
> index d80dcf8..f389f5c 100644
> --- a/drivers/staging/iio/trigger/iio-trig-bfin-timer.c
> +++ b/drivers/staging/iio/trigger/iio-trig-bfin-timer.c
> @@ -187,9 +187,9 @@ static int iio_bfin_tmr_trigger_probe(struct platform_device *pdev)
>  		return -ENOMEM;
>  
>  	st->irq = platform_get_irq(pdev, 0);
> -	if (!st->irq) {
> +	if (st->irq < 0) {
>  		dev_err(&pdev->dev, "No IRQs specified");
> -		return -ENODEV;
> +		return st->irq;
>  	}
>  
>  	ret = iio_bfin_tmr_get_number(st->irq);

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-12-02 12:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-30 15:43 [PATCH 0/3] Handle return value of platform_get_irq Arvind Yadav
2017-11-30 15:43 ` [PATCH 1/3] iio: trigger: Fix platform_get_irq's error checking Arvind Yadav
2017-12-02 12:22   ` Jonathan Cameron
2017-11-30 15:43 ` [PATCH 2/3] staging: irda: Handle return value of platform_get_irq Arvind Yadav
2017-11-30 16:41   ` Greg KH
2017-11-30 16:45     ` arvindY
2017-11-30 15:43 ` [PATCH 3/3] staging: irda: Remove unnecessary 'err' initialization Arvind Yadav

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).