CHROMIUM: drm/rockchip: Fix the call to drm_gem_put_pages()
authorTomasz Figa <tfiga@chromium.org>
Thu, 8 Sep 2016 09:52:00 +0000 (18:52 +0900)
committerHuang, Tao <huangtao@rock-chips.com>
Wed, 7 Dec 2016 06:32:02 +0000 (14:32 +0800)
When freeing the buffer we don't have any means of determining if the
buffer was read or written, so we must assume both and pass true for
both arguments of drm_gem_put_pages(). Let's fix the code which
currently passes false.

BUG=chrome-os-partner:56378
TEST=while true; do backlight_dbus_tool --set --percent=0 && sleep 8 &&
 backlight_dbus_tool --set --percent=100 && sleep 3 ; done

Change-Id: I7da2fd81e7e728e0ef242837b70819c4a3aee7bf
Signed-off-by: Tomasz Figa <tfiga@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/382934
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
Signed-off-by: Randy Li <randy.li@rock-chips.com>
drivers/gpu/drm/rockchip/rockchip_drm_gem.c

index dbe08906f90be6fb9065ae8eae155392558751ec..9d544d1ba547e8a2fe324df010b72e535c2543c1 100644 (file)
@@ -115,7 +115,7 @@ static void rockchip_gem_put_pages(struct rockchip_gem_object *rk_obj)
 {
        sg_free_table(rk_obj->sgt);
        kfree(rk_obj->sgt);
-       drm_gem_put_pages(&rk_obj->base, rk_obj->pages, false, false);
+       drm_gem_put_pages(&rk_obj->base, rk_obj->pages, true, true);
 }
 
 static int rockchip_gem_alloc_iommu(struct rockchip_gem_object *rk_obj,