diff options
| author | Sean Paul <[email protected]> | 2017-07-17 11:43:05 -0400 |
|---|---|---|
| committer | Sean Paul <[email protected]> | 2017-07-17 11:56:07 -0400 |
| commit | ef434a0c2ce765ad33026375db7d23aebd5e9532 (patch) | |
| tree | 4bdac59f0bac3a6508741e6bd62da6e770fc3bc1 /drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | |
| parent | 76250f2b743b72cb685cc51ac0cdabb32957180b (diff) | |
| parent | 1ed134e6526b1b513a14fba938f6d96aa1c7f3dd (diff) | |
Merge branch 'drm-misc-next-fixes' into drm-misc-fixes
Pick up
1ed134e6526b drm/vc4: Fix VBLANK handling in crtc->enable() path
From drm-misc-next-fixes, it was applied after the last pull request
was sent from that branch. We'll send it through drm-fixes instead.
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c index ed814e6d0207..a6899180b265 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c @@ -298,6 +298,25 @@ struct dma_fence *amdgpu_sync_get_fence(struct amdgpu_sync *sync) return NULL; } +int amdgpu_sync_wait(struct amdgpu_sync *sync, bool intr) +{ + struct amdgpu_sync_entry *e; + struct hlist_node *tmp; + int i, r; + + hash_for_each_safe(sync->fences, i, tmp, e, node) { + r = dma_fence_wait(e->fence, intr); + if (r) + return r; + + hash_del(&e->node); + dma_fence_put(e->fence); + kmem_cache_free(amdgpu_sync_slab, e); + } + + return 0; +} + /** * amdgpu_sync_free - free the sync object * |