All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] irqchip: imx-mu-msi: fix platform_get_irq() error checking
@ 2022-08-12  6:23 Dan Carpenter
  2022-08-12 16:01 ` [EXT] " Frank Li
  0 siblings, 1 reply; 2+ messages in thread
From: Dan Carpenter @ 2022-08-12  6:23 UTC (permalink / raw)
  To: Thomas Gleixner, Frank Li
  Cc: Marc Zyngier, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam, NXP Linux Team, Jon Mason, linux-kernel,
	kernel-janitors

The platform_get_irq() function returns negative error codes on error
so "gic_irq" needs to be signed to handle this correctly.  Also change
the "<= 0" check to "< 0" and preserve the error code as the
documentation for platform_get_irq() shows.

Fixes: 893ae515ff8d ("irqchip: imx mu worked as msi controller")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 drivers/irqchip/irq-imx-mu-msi.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/irqchip/irq-imx-mu-msi.c b/drivers/irqchip/irq-imx-mu-msi.c
index f7193a6c1245..97f3cdab8f58 100644
--- a/drivers/irqchip/irq-imx-mu-msi.c
+++ b/drivers/irqchip/irq-imx-mu-msi.c
@@ -80,7 +80,7 @@ struct imx_mu_msi {
 	struct imx_mu_msir	*msir;
 	u32			irqs_num;
 	unsigned long		used;
-	u32			gic_irq;
+	int			gic_irq;
 	struct clk              *clk;
 	struct device		*pd_a;
 	struct device		*pd_b;
@@ -355,8 +355,8 @@ static int imx_mu_msi_probe(struct platform_device *pdev)
 	msi_data->irqs_num = IMX_MU_CHANS;
 
 	msi_data->gic_irq = platform_get_irq(msi_data->pdev, 0);
-	if (msi_data->gic_irq <= 0)
-		return -ENODEV;
+	if (msi_data->gic_irq < 0)
+		return msi_data->gic_irq;
 
 	platform_set_drvdata(pdev, msi_data);
 
-- 
2.35.1


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

* RE: [EXT] [PATCH] irqchip: imx-mu-msi: fix platform_get_irq() error checking
  2022-08-12  6:23 [PATCH] irqchip: imx-mu-msi: fix platform_get_irq() error checking Dan Carpenter
@ 2022-08-12 16:01 ` Frank Li
  0 siblings, 0 replies; 2+ messages in thread
From: Frank Li @ 2022-08-12 16:01 UTC (permalink / raw)
  To: Dan Carpenter, Thomas Gleixner
  Cc: Marc Zyngier, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam, dl-linux-imx, Jon Mason,
	linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org



> -----Original Message-----
> From: Dan Carpenter <dan.carpenter@oracle.com>
> Sent: Friday, August 12, 2022 1:23 AM
> To: Thomas Gleixner <tglx@linutronix.de>; Frank Li <frank.li@nxp.com>
> Cc: Marc Zyngier <maz@kernel.org>; Shawn Guo <shawnguo@kernel.org>;
> Sascha Hauer <s.hauer@pengutronix.de>; Pengutronix Kernel Team
> <kernel@pengutronix.de>; Fabio Estevam <festevam@gmail.com>; dl-linux-
> imx <linux-imx@nxp.com>; Jon Mason <jdmason@kudzu.us>; linux-
> kernel@vger.kernel.org; kernel-janitors@vger.kernel.org
> Subject: [EXT] [PATCH] irqchip: imx-mu-msi: fix platform_get_irq() error
> checking
> 
> Caution: EXT Email
> 
> The platform_get_irq() function returns negative error codes on error
> so "gic_irq" needs to be signed to handle this correctly.  Also change
> the "<= 0" check to "< 0" and preserve the error code as the
> documentation for platform_get_irq() shows.
> 
> Fixes: 893ae515ff8d ("irqchip: imx mu worked as msi controller")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
[Frank Li] Thanks,  893ae515ff8d should be under review. There are still some issue, which need be fixed.
I am working on these.  I will squash your patch into my next version.

>  drivers/irqchip/irq-imx-mu-msi.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/irqchip/irq-imx-mu-msi.c b/drivers/irqchip/irq-imx-mu-
> msi.c
> index f7193a6c1245..97f3cdab8f58 100644
> --- a/drivers/irqchip/irq-imx-mu-msi.c
> +++ b/drivers/irqchip/irq-imx-mu-msi.c
> @@ -80,7 +80,7 @@ struct imx_mu_msi {
>         struct imx_mu_msir      *msir;
>         u32                     irqs_num;
>         unsigned long           used;
> -       u32                     gic_irq;
> +       int                     gic_irq;
>         struct clk              *clk;
>         struct device           *pd_a;
>         struct device           *pd_b;
> @@ -355,8 +355,8 @@ static int imx_mu_msi_probe(struct platform_device
> *pdev)
>         msi_data->irqs_num = IMX_MU_CHANS;
> 
>         msi_data->gic_irq = platform_get_irq(msi_data->pdev, 0);
> -       if (msi_data->gic_irq <= 0)
> -               return -ENODEV;
> +       if (msi_data->gic_irq < 0)
> +               return msi_data->gic_irq;
> 
>         platform_set_drvdata(pdev, msi_data);
> 
> --
> 2.35.1


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

end of thread, other threads:[~2022-08-12 16:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-12  6:23 [PATCH] irqchip: imx-mu-msi: fix platform_get_irq() error checking Dan Carpenter
2022-08-12 16:01 ` [EXT] " Frank Li

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.