summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/qxl/qxl_fence.c
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2013-08-29 19:12:04 -0700
committerOlof Johansson <olof@lixom.net>2013-08-29 19:12:04 -0700
commit2bbc31ef2b398d17016c6438016cc76913990950 (patch)
tree10de572013948341054d73acfab0f6d77ae35cbd /drivers/gpu/drm/qxl/qxl_fence.c
parenta3e008d1b5e39abe81e233bde623604841ff9a73 (diff)
parentaf0721966195b3966214edd54af0d5f84d65419a (diff)
Merge tag 'omap-for-v3.12/fixes-non-critical-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical
From Tony Lindgren: Omap fixes for the merge window that are not urgent enough for the -rc series. * tag 'omap-for-v3.12/fixes-non-critical-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start' ARM: OMAP2: remove useless variable 'ret' ARM: OMAP: dma: fix error return code in omap_system_dma_probe() ARM: OMAP2+: fix wrong address when loading PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boards ARM: OMAP2: Use a consistent AM33XX SoC option description ARM: OMAP2+: Remove legacy device creation for McPDM and DMIC + Linux 3.11-rc6
Diffstat (limited to 'drivers/gpu/drm/qxl/qxl_fence.c')
-rw-r--r--drivers/gpu/drm/qxl/qxl_fence.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/gpu/drm/qxl/qxl_fence.c b/drivers/gpu/drm/qxl/qxl_fence.c
index 63c6715ad385..ae59e91cfb9a 100644
--- a/drivers/gpu/drm/qxl/qxl_fence.c
+++ b/drivers/gpu/drm/qxl/qxl_fence.c
@@ -49,17 +49,11 @@
For some reason every so often qxl hw fails to release, things go wrong.
*/
-
-
-int qxl_fence_add_release(struct qxl_fence *qfence, uint32_t rel_id)
+/* must be called with the fence lock held */
+void qxl_fence_add_release_locked(struct qxl_fence *qfence, uint32_t rel_id)
{
- struct qxl_bo *bo = container_of(qfence, struct qxl_bo, fence);
-
- spin_lock(&bo->tbo.bdev->fence_lock);
radix_tree_insert(&qfence->tree, rel_id, qfence);
qfence->num_active_releases++;
- spin_unlock(&bo->tbo.bdev->fence_lock);
- return 0;
}
int qxl_fence_remove_release(struct qxl_fence *qfence, uint32_t rel_id)