diff options
author | Nicolai Hähnle <Nicolai.Haehnle@amd.com> | 2015-12-02 17:35:12 +0100 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-12-02 15:04:04 -0500 |
commit | 07df04dfcfe51a45239d056d43cbc09702262c82 (patch) | |
tree | cd4cd9b9a9d38c1dd16ea31b11a4e87766b641b9 /drivers/of/irq.c | |
parent | e2f784fa8a3b1fbf6999ba44f7327bd9d29f2c5b (diff) | |
download | linux-07df04dfcfe51a45239d056d43cbc09702262c82.tar.bz2 |
drm/amdgpu: fix race condition in amd_sched_entity_push_job
As soon as we leave the spinlock after the job has been added to the job
queue, we can no longer rely on the job's data to be available.
I have seen a null-pointer dereference due to sched == NULL in
amd_sched_wakeup via amd_sched_entity_push_job and
amd_sched_ib_submit_kernel_helper. Since the latter initializes
sched_job->sched with the address of the ring scheduler, which is
guaranteed to be non-NULL, this race appears to be a likely culprit.
Signed-off-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Bugzilla: https://bugs.freedesktop.org/attachment.cgi?bugid=93079
Reviewed-by: Christian König <christian.koenig@amd.com>
Diffstat (limited to 'drivers/of/irq.c')
0 files changed, 0 insertions, 0 deletions