[PATCH 5.6 01/73] drm/scheduler: fix drm_sched_get_cleanup_job

From: Greg Kroah-Hartman
Date: Mon May 04 2020 - 14:05:13 EST


From: Christian KÃnig <christian.koenig@xxxxxxx>

commit 8623b5255ae7ccaf276aac3920787bf575fa6b37 upstream.

We are racing to initialize sched->thread here, just always check the
current thread.

Signed-off-by: Christian KÃnig <christian.koenig@xxxxxxx>
Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@xxxxxxx>
Reviewed-by: Kent Russell <kent.russell@xxxxxxx>
Link: https://patchwork.freedesktop.org/patch/361303/
Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

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

--- a/drivers/gpu/drm/scheduler/sched_main.c
+++ b/drivers/gpu/drm/scheduler/sched_main.c
@@ -687,7 +687,7 @@ drm_sched_get_cleanup_job(struct drm_gpu
*/
if ((sched->timeout != MAX_SCHEDULE_TIMEOUT &&
!cancel_delayed_work(&sched->work_tdr)) ||
- __kthread_should_park(sched->thread))
+ kthread_should_park())
return NULL;

spin_lock_irqsave(&sched->job_list_lock, flags);