Message ID | 1465827163-27638-1-git-send-email-deathsimple@vodafone.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 06/13/16 23:12, Christian König wrote: > From: Christian König <christian.koenig@amd.com> > > Drop the lock before calling cancel_delayed_work_sync(). > > Signed-off-by: Christian König <christian.koenig@amd.com> > Tested-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96445
On Mon, Jun 13, 2016 at 10:23 PM, Michel Dänzer <michel@daenzer.net> wrote: > On 06/13/16 23:12, Christian König wrote: >> From: Christian König <christian.koenig@amd.com> >> >> Drop the lock before calling cancel_delayed_work_sync(). >> >> Signed-off-by: Christian König <christian.koenig@amd.com> >> Tested-by: Nicolai Hähnle <nicolai.haehnle@amd.com> > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96445 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Applied with the bugzilla entry added. Thanks, Alex > > > -- > Earthling Michel Dänzer | http://www.amd.com > Libre software enthusiast | Mesa and X developer
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c index 74aa0b3..b1d49c5 100644 --- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c +++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c @@ -339,7 +339,9 @@ static void amd_sched_job_finish(struct work_struct *work) if (sched->timeout != MAX_SCHEDULE_TIMEOUT) { struct amd_sched_job *next; + spin_unlock_irqrestore(&sched->job_list_lock, flags); cancel_delayed_work_sync(&s_job->work_tdr); + spin_lock_irqsave(&sched->job_list_lock, flags); /* queue TDR for next job */ next = list_first_entry_or_null(&sched->ring_mirror_list,