Message ID | 20220422085211.2776419-1-lv.ruyi@zte.com.cn |
---|---|
State | New |
Headers | show |
Series | drm: msm: fix error check return value of irq_of_parse_and_map() | expand |
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;