aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.h
diff options
context:
space:
mode:
authorSteven Price <[email protected]>2019-10-25 10:51:56 +0000
committerChristian König <[email protected]>2019-10-25 11:47:58 +0000
commit588b9828f0744ca13555c4a35cd0251ac8ad8ad2 (patch)
treefa95c13994cb58d19d64937c5bec1a19971cdcbd /drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.h
parentdoc: drm: Update references to previously renamed files (diff)
downloadkernel-588b9828f0744ca13555c4a35cd0251ac8ad8ad2.tar.gz
kernel-588b9828f0744ca13555c4a35cd0251ac8ad8ad2.zip
drm: Don't free jobs in wait_event_interruptible()
drm_sched_cleanup_jobs() attempts to free finished jobs, however because it is called as the condition of wait_event_interruptible() it must not sleep. Unfortunately some free callbacks (notably for Panfrost) do sleep. Instead let's rename drm_sched_cleanup_jobs() to drm_sched_get_cleanup_job() and simply return a job for processing if there is one. The caller can then call the free_job() callback outside the wait_event_interruptible() where sleeping is possible before re-checking and returning to sleep if necessary. Tested-by: Christian Gmeiner <[email protected]> Fixes: 5918045c4ed4 ("drm/scheduler: rework job destruction") Signed-off-by: Steven Price <[email protected]> Reviewed-by: Christian König <[email protected]> Signed-off-by: Christian König <[email protected]> Link: https://patchwork.freedesktop.org/patch/337652/
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.h')
0 files changed, 0 insertions, 0 deletions