Message ID | 20220422085211.2776419-1-lv.ruyi@zte.com.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm: msm: fix error check return value of irq_of_parse_and_map() | expand |
On Fri, 22 Apr 2022 at 11:52, <cgel.zte@gmail.com> wrote: > > From: Lv Ruyi <lv.ruyi@zte.com.cn> > > The irq_of_parse_and_map() function returns 0 on failure, and does not > return an negative value. > > Reported-by: Zeal Robot <zealci@zte.com.cn> > Signed-off-by: Lv Ruyi <lv.ruyi@zte.com.cn> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c > index 3b92372e7bdf..1fb1ed9e95d9 100644 > --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c > +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c > @@ -570,7 +570,7 @@ struct msm_kms *mdp5_kms_init(struct drm_device *dev) > } > > irq = irq_of_parse_and_map(pdev->dev.of_node, 0); > - if (irq < 0) { > + if (!irq) { > ret = irq; > DRM_DEV_ERROR(&pdev->dev, "failed to get irq: %d\n", ret); > goto fail; > -- > 2.25.1 >
Il 22/04/22 10:52, cgel.zte@gmail.com ha scritto: > From: Lv Ruyi <lv.ruyi@zte.com.cn> > > The irq_of_parse_and_map() function returns 0 on failure, and does not > return an negative value. > > Reported-by: Zeal Robot <zealci@zte.com.cn> > Signed-off-by: Lv Ruyi <lv.ruyi@zte.com.cn> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
On 22/04/2022 13:42, Dmitry Baryshkov wrote: > On Fri, 22 Apr 2022 at 11:52, <cgel.zte@gmail.com> wrote: >> >> From: Lv Ruyi <lv.ruyi@zte.com.cn> >> >> The irq_of_parse_and_map() function returns 0 on failure, and does not >> return an negative value. >> >> Reported-by: Zeal Robot <zealci@zte.com.cn> >> Signed-off-by: Lv Ruyi <lv.ruyi@zte.com.cn> > > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > >> --- >> drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c >> index 3b92372e7bdf..1fb1ed9e95d9 100644 >> --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c >> +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c >> @@ -570,7 +570,7 @@ struct msm_kms *mdp5_kms_init(struct drm_device *dev) >> } >> >> irq = irq_of_parse_and_map(pdev->dev.of_node, 0); >> - if (irq < 0) { >> + if (!irq) { >> ret = irq; As noted by Stephen, this will cause the function to prematurely return 0 (success). >> DRM_DEV_ERROR(&pdev->dev, "failed to get irq: %d\n", ret); >> goto fail; >> -- >> 2.25.1 >> > >
diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c index 3b92372e7bdf..1fb1ed9e95d9 100644 --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c @@ -570,7 +570,7 @@ struct msm_kms *mdp5_kms_init(struct drm_device *dev) } irq = irq_of_parse_and_map(pdev->dev.of_node, 0); - if (irq < 0) { + if (!irq) { ret = irq; DRM_DEV_ERROR(&pdev->dev, "failed to get irq: %d\n", ret); goto fail;