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 --- 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;
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
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
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 --- v2: don't print irq, and return ERR_PTR(-EINVAL) --- drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c index 3b92372e7bdf..44e395e59df9 100644 --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c @@ -570,9 +570,9 @@ struct msm_kms *mdp5_kms_init(struct drm_device *dev) }
irq = irq_of_parse_and_map(pdev->dev.of_node, 0); - if (irq < 0) { - ret = irq; - DRM_DEV_ERROR(&pdev->dev, "failed to get irq: %d\n", ret); + if (!irq) { + ret = -EINVAL; + DRM_DEV_ERROR(&pdev->dev, "failed to get irq\n"); goto fail; }
On 24/04/2022 06:19, 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
v2: don't print irq, and return ERR_PTR(-EINVAL)
drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c index 3b92372e7bdf..44e395e59df9 100644 --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c @@ -570,9 +570,9 @@ struct msm_kms *mdp5_kms_init(struct drm_device *dev) }
irq = irq_of_parse_and_map(pdev->dev.of_node, 0);
- if (irq < 0) {
ret = irq;
DRM_DEV_ERROR(&pdev->dev, "failed to get irq: %d\n", ret);
- if (!irq) {
ret = -EINVAL;
goto fail; }DRM_DEV_ERROR(&pdev->dev, "failed to get irq\n");
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
dri-devel@lists.freedesktop.org