drm/rockchip: fix iommu_map_sg check
authorMark Yao <mark.yao@rock-chips.com>
Fri, 9 Dec 2016 01:03:10 +0000 (09:03 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Fri, 9 Dec 2016 02:56:24 +0000 (10:56 +0800)
The return value of iommu_map_sg is size_t, it's unsigned

Change-Id: Ib06f61c020510673bc513e1a8fde6fd3980a7ca3
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
drivers/gpu/drm/rockchip/rockchip_drm_gem.c

index f79238149ff6e632db8fe540ab2b96c0bdebffc0..2af62e3c6d249df86f431ac47ef9a9a7f761e4a0 100644 (file)
@@ -47,7 +47,7 @@ static int rockchip_gem_iommu_map(struct rockchip_gem_object *rk_obj)
 
        ret = iommu_map_sg(private->domain, rk_obj->dma_addr, rk_obj->sgt->sgl,
                           rk_obj->sgt->nents, prot);
-       if (ret < 0) {
+       if (ret < rk_obj->base.size) {
                DRM_ERROR("failed to map buffer: %zd\n", ret);
                goto err_remove_node;
        }