diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2013-07-04 09:35:00 -0400 |
---|---|---|
committer | Inki Dae <daeinki@gmail.com> | 2013-07-29 13:01:53 -0400 |
commit | be348790e46cf3783f265b0ecf9fa9dc68bd6f15 (patch) | |
tree | d0665505b92727c008f8627e182becb4555a9a8c /drivers/gpu/drm | |
parent | bf903e4141fce4b35072d5b8fa0ddd299aaf01ea (diff) |
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: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_ipp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_ipp.c b/drivers/gpu/drm/exynos/exynos_drm_ipp.c index b1ef8e7ff9c9..0eb8538823e4 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_ipp.c +++ b/drivers/gpu/drm/exynos/exynos_drm_ipp.c | |||
@@ -342,10 +342,10 @@ int exynos_drm_ipp_get_property(struct drm_device *drm_dev, void *data, | |||
342 | */ | 342 | */ |
343 | ippdrv = ipp_find_obj(&ctx->ipp_idr, &ctx->ipp_lock, | 343 | ippdrv = ipp_find_obj(&ctx->ipp_idr, &ctx->ipp_lock, |
344 | prop_list->ipp_id); | 344 | prop_list->ipp_id); |
345 | if (!ippdrv) { | 345 | if (IS_ERR(ippdrv)) { |
346 | DRM_ERROR("not found ipp%d driver.\n", | 346 | DRM_ERROR("not found ipp%d driver.\n", |
347 | prop_list->ipp_id); | 347 | prop_list->ipp_id); |
348 | return -EINVAL; | 348 | return PTR_ERR(ippdrv); |
349 | } | 349 | } |
350 | 350 | ||
351 | prop_list = ippdrv->prop_list; | 351 | prop_list = ippdrv->prop_list; |
@@ -970,9 +970,9 @@ int exynos_drm_ipp_queue_buf(struct drm_device *drm_dev, void *data, | |||
970 | /* find command node */ | 970 | /* find command node */ |
971 | c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock, | 971 | c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock, |
972 | qbuf->prop_id); | 972 | qbuf->prop_id); |
973 | if (!c_node) { | 973 | if (IS_ERR(c_node)) { |
974 | DRM_ERROR("failed to get command node.\n"); | 974 | DRM_ERROR("failed to get command node.\n"); |
975 | return -EFAULT; | 975 | return PTR_ERR(c_node); |
976 | } | 976 | } |
977 | 977 | ||
978 | /* buffer control */ | 978 | /* buffer control */ |
@@ -1106,9 +1106,9 @@ int exynos_drm_ipp_cmd_ctrl(struct drm_device *drm_dev, void *data, | |||
1106 | 1106 | ||
1107 | c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock, | 1107 | c_node = ipp_find_obj(&ctx->prop_idr, &ctx->prop_lock, |
1108 | cmd_ctrl->prop_id); | 1108 | cmd_ctrl->prop_id); |
1109 | if (!c_node) { | 1109 | if (IS_ERR(c_node)) { |
1110 | DRM_ERROR("invalid command node list.\n"); | 1110 | DRM_ERROR("invalid command node list.\n"); |
1111 | return -EINVAL; | 1111 | return PTR_ERR(c_node); |
1112 | } | 1112 | } |
1113 | 1113 | ||
1114 | if (!exynos_drm_ipp_check_valid(ippdrv->dev, cmd_ctrl->ctrl, | 1114 | if (!exynos_drm_ipp_check_valid(ippdrv->dev, cmd_ctrl->ctrl, |