[PATCH v2 5/7] drm/rockchip: Fix the call to drm_gem_put_pages()

Mark Yao mark.yao at rock-chips.com
Tue Feb 7 00:37:50 PST 2017

From: Tomasz Figa <tfiga at 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 <tfiga at chromium.org>
Signed-off-by: Mark Yao <mark.yao at rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/382934
Reviewed-by: Daniel Kurtz <djkurtz at 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)
-	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,

More information about the Linux-rockchip mailing list