2015-11-19 04:52:21

by Alexandre Courbot

[permalink] [raw]
Subject: [PATCH v2] drm/tegra: fix locking of SET_TILING ioctl

Commit ef4c6270bf28 made the check of whether struct_mutex is held more
verbose, and this triggers a warning when calling
drm_gem_object_unreference() from tegra_gem_set_tiling() which does not
acquire that lock.

Use drm_gem_object_unreference_unlocked() instead to ensure locking is
handled correctly.

Signed-off-by: Alexandre Courbot <[email protected]>
Reviewed-by: Daniel Vetter <[email protected]>
---
v2: fix commit log according to Daniel's comments, add review tag.

drivers/gpu/drm/tegra/drm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/tegra/drm.c b/drivers/gpu/drm/tegra/drm.c
index cc48334ef164..c0ae89865958 100644
--- a/drivers/gpu/drm/tegra/drm.c
+++ b/drivers/gpu/drm/tegra/drm.c
@@ -683,7 +683,7 @@ static int tegra_gem_set_tiling(struct drm_device *drm, void *data,
bo->tiling.mode = mode;
bo->tiling.value = value;

- drm_gem_object_unreference(gem);
+ drm_gem_object_unreference_unlocked(gem);

return 0;
}
--
2.6.2