Commit be348790 authored by Wei Yongjun's avatar Wei Yongjun Committed by Inki Dae

drm/exynos: exynos_drm_ipp: fix return value check

In case of error, the function ipp_find_obj() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check
should be replaced with IS_ERR().
Signed-off-by: default avatarWei Yongjun <yongjun_wei@trendmicro.com.cn>
Reviewed-by: default avatarTomasz Figa <t.figa@samsung.com>
Signed-off-by: default avatarInki Dae <inki.dae@samsung.com>
parent bf903e41
...@@ -342,10 +342,10 @@ int exynos_drm_ipp_get_property(struct drm_device *drm_dev, void *data, ...@@ -342,10 +342,10 @@ int exynos_drm_ipp_get_property(struct drm_device *drm_dev, void *data,
*/ */
ippdrv = ipp_find_obj(&ctx->ipp_idr, &ctx->ipp_lock, ippdrv = ipp_find_obj(&ctx->ipp_idr, &ctx->ipp_lock,
prop_list->ipp_id); prop_list->ipp_id);
if (!ippdrv) { if (IS_ERR(ippdrv)) {
DRM_ERROR("not found ipp%d driver.\n", DRM_ERROR("not found ipp%d driver.\n",
prop_list->ipp_id); prop_list->ipp_id);
return -EINVAL; return PTR_ERR(ippdrv);
} }
prop_list = ippdrv->prop_list; prop_list = ippdrv->prop_list;
...@@ -970,9 +970,9 @@ int exynos_drm_ipp_queue_buf(struct drm_device *drm_dev, void *data, ...@@ -970,9 +970,9 @@ int exynos_drm_ipp_queue_buf(struct drm_device *drm_dev, void *data,
/* find command node */ /* find command node */
c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock, c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock,
qbuf->prop_id); qbuf->prop_id);
if (!c_node) { if (IS_ERR(c_node)) {
DRM_ERROR("failed to get command node.\n"); DRM_ERROR("failed to get command node.\n");
return -EFAULT; return PTR_ERR(c_node);
} }
/* buffer control */ /* buffer control */
...@@ -1106,9 +1106,9 @@ int exynos_drm_ipp_cmd_ctrl(struct drm_device *drm_dev, void *data, ...@@ -1106,9 +1106,9 @@ int exynos_drm_ipp_cmd_ctrl(struct drm_device *drm_dev, void *data,
c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock, c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock,
cmd_ctrl->prop_id); cmd_ctrl->prop_id);
if (!c_node) { if (IS_ERR(c_node)) {
DRM_ERROR("invalid command node list.\n"); DRM_ERROR("invalid command node list.\n");
return -EINVAL; return PTR_ERR(c_node);
} }
if (!exynos_drm_ipp_check_valid(ippdrv->dev, cmd_ctrl->ctrl, if (!exynos_drm_ipp_check_valid(ippdrv->dev, cmd_ctrl->ctrl,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment