RE: [EXT] [PATCH] irqchip: imx-mu-msi: fix platform_get_irq() error checking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Sent: Friday, August 12, 2022 1:23 AM
> To: Thomas Gleixner <tglx@xxxxxxxxxxxxx>; Frank Li <frank.li@xxxxxxx>
> Cc: Marc Zyngier <maz@xxxxxxxxxx>; Shawn Guo <shawnguo@xxxxxxxxxx>;
> Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>; Pengutronix Kernel Team
> <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; dl-linux-
> imx <linux-imx@xxxxxxx>; Jon Mason <jdmason@xxxxxxxx>; linux-
> kernel@xxxxxxxxxxxxxxx; kernel-janitors@xxxxxxxxxxxxxxx
> 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@xxxxxxxxxx>
> ---
[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





[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux