From: Tomasz Figa <tf...@chromium.org>

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.

TEST=while true; do backlight_dbus_tool --set --percent=0 && sleep 8 &&
 backlight_dbus_tool --set --percent=100 && sleep 3 ; done

Signed-off-by: Tomasz Figa <tf...@chromium.org>
Signed-off-by: Mark Yao <mark....@rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/382934
Reviewed-by: Daniel Kurtz <djku...@chromium.org>
---
 drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c 
b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
index cc48673..1daa531 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
@@ -119,7 +119,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,
-- 
1.9.1


Reply via email to