public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map
@ 2014-11-14 22:16 Dmitry Torokhov
  2014-11-15 19:41 ` Florian Fainelli
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Dmitry Torokhov @ 2014-11-14 22:16 UTC (permalink / raw)
  To: Thomas Gleixner
  Cc: Jason Cooper, Arnd Bergmann, Kevin Cernekee, Florian Fainelli,
	linux-kernel

Return value of irq_of_parse_and_map() is unsigned int, with 0
indicating failure, so testing for negative result never works.

Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
---

Not tested, found by casual code inspection.

 drivers/irqchip/irq-bcm7120-l2.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index e7c6155..8eec8e1 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -102,9 +102,9 @@ static int bcm7120_l2_intc_init_one(struct device_node *dn,
 	unsigned int idx;
 
 	parent_irq = irq_of_parse_and_map(dn, irq);
-	if (parent_irq < 0) {
+	if (!parent_irq) {
 		pr_err("failed to map interrupt %d\n", irq);
-		return parent_irq;
+		return -EINVAL;
 	}
 
 	/* For multiple parent IRQs with multiple words, this looks like:
-- 
2.1.0.rc2.206.gedb03e5


-- 
Dmitry

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

* Re: [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map
  2014-11-14 22:16 [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map Dmitry Torokhov
@ 2014-11-15 19:41 ` Florian Fainelli
  2014-11-15 19:42 ` Kevin Cernekee
  2014-11-26  6:36 ` Jason Cooper
  2 siblings, 0 replies; 4+ messages in thread
From: Florian Fainelli @ 2014-11-15 19:41 UTC (permalink / raw)
  To: Dmitry Torokhov
  Cc: Thomas Gleixner, Jason Cooper, Arnd Bergmann, Kevin Cernekee,
	linux-kernel@vger.kernel.org

2014-11-14 14:16 GMT-08:00 Dmitry Torokhov <dtor@chromium.org>:
> Return value of irq_of_parse_and_map() is unsigned int, with 0
> indicating failure, so testing for negative result never works.
>
> Signed-off-by: Dmitry Torokhov <dtor@chromium.org>

Acked-by: Florian Fainelli <f.fainelli@gmail.com>

> ---
>
> Not tested, found by casual code inspection.
>
>  drivers/irqchip/irq-bcm7120-l2.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
> index e7c6155..8eec8e1 100644
> --- a/drivers/irqchip/irq-bcm7120-l2.c
> +++ b/drivers/irqchip/irq-bcm7120-l2.c
> @@ -102,9 +102,9 @@ static int bcm7120_l2_intc_init_one(struct device_node *dn,
>         unsigned int idx;
>
>         parent_irq = irq_of_parse_and_map(dn, irq);
> -       if (parent_irq < 0) {
> +       if (!parent_irq) {
>                 pr_err("failed to map interrupt %d\n", irq);
> -               return parent_irq;
> +               return -EINVAL;
>         }
>
>         /* For multiple parent IRQs with multiple words, this looks like:
> --
> 2.1.0.rc2.206.gedb03e5
>
>
> --
> Dmitry



-- 
Florian

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

* Re: [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map
  2014-11-14 22:16 [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map Dmitry Torokhov
  2014-11-15 19:41 ` Florian Fainelli
@ 2014-11-15 19:42 ` Kevin Cernekee
  2014-11-26  6:36 ` Jason Cooper
  2 siblings, 0 replies; 4+ messages in thread
From: Kevin Cernekee @ 2014-11-15 19:42 UTC (permalink / raw)
  To: Dmitry Torokhov
  Cc: Thomas Gleixner, Jason Cooper, Arnd Bergmann, Florian Fainelli,
	linux-kernel@vger.kernel.org

On Fri, Nov 14, 2014 at 2:16 PM, Dmitry Torokhov <dtor@chromium.org> wrote:
> Return value of irq_of_parse_and_map() is unsigned int, with 0
> indicating failure, so testing for negative result never works.
>
> Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
> ---
>
> Not tested, found by casual code inspection.
>
>  drivers/irqchip/irq-bcm7120-l2.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
> index e7c6155..8eec8e1 100644
> --- a/drivers/irqchip/irq-bcm7120-l2.c
> +++ b/drivers/irqchip/irq-bcm7120-l2.c
> @@ -102,9 +102,9 @@ static int bcm7120_l2_intc_init_one(struct device_node *dn,
>         unsigned int idx;
>
>         parent_irq = irq_of_parse_and_map(dn, irq);
> -       if (parent_irq < 0) {
> +       if (!parent_irq) {
>                 pr_err("failed to map interrupt %d\n", irq);
> -               return parent_irq;
> +               return -EINVAL;
>         }
>
>         /* For multiple parent IRQs with multiple words, this looks like:

Hi Dmitry,

Thanks for the review.  For this patch and for your irq-brcmstb-l2.c
patch, I'll add:

Tested-by: Kevin Cernekee <cernekee@gmail.com>

The same bug also showed up in my new irq-bcm7038-l1.c driver; it will
be fixed in the initial submission.

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

* Re: [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map
  2014-11-14 22:16 [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map Dmitry Torokhov
  2014-11-15 19:41 ` Florian Fainelli
  2014-11-15 19:42 ` Kevin Cernekee
@ 2014-11-26  6:36 ` Jason Cooper
  2 siblings, 0 replies; 4+ messages in thread
From: Jason Cooper @ 2014-11-26  6:36 UTC (permalink / raw)
  To: Dmitry Torokhov
  Cc: Thomas Gleixner, Arnd Bergmann, Kevin Cernekee, Florian Fainelli,
	linux-kernel

On Fri, Nov 14, 2014 at 02:16:14PM -0800, Dmitry Torokhov wrote:
> Return value of irq_of_parse_and_map() is unsigned int, with 0
> indicating failure, so testing for negative result never works.
> 
> Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
> ---
> 
> Not tested, found by casual code inspection.
> 
>  drivers/irqchip/irq-bcm7120-l2.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Both applied to irqchip/urgent with Florian's Ack and Kevin's Tested-by.

thx,

Jason.

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

end of thread, other threads:[~2014-11-26  6:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-14 22:16 [PATCH] irqchip: bcm7120-l2: fix error handling of irq_of_parse_and_map Dmitry Torokhov
2014-11-15 19:41 ` Florian Fainelli
2014-11-15 19:42 ` Kevin Cernekee
2014-11-26  6:36 ` Jason Cooper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox