From: Colin Ian King Date: Thu, 28 May 2020 22:24:53 +0000 (+0100) Subject: drm/amdkfd: fix a dereference of pdd before it is null checked X-Git-Tag: v5.9-rc1~134^2~19^2~427 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2652bda7b4f732e4b2cef82fa7476a7d4b648409;p=thirdparty%2Flinux.git drm/amdkfd: fix a dereference of pdd before it is null checked Currently pointer pdd is being dereferenced when assigning pointer dpm and then pdd is being null checked. Fix this by checking if pdd is null before the dereference of pdd occurs. Addresses-Coverity: ("Dereference before null check") Fixes: 32cb59f31362 ("drm/amdkfd: Track SDMA utilization per process") Signed-off-by: Colin Ian King Reviewed-by: Felix Kuehling Signed-off-by: Felix Kuehling Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c index db010c5da1444..a9a7f5aa2710a 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c @@ -103,10 +103,11 @@ static void kfd_sdma_activity_worker(struct work_struct *work) return; pdd = workarea->pdd; + if (!pdd) + return; dqm = pdd->dev->dqm; qpd = &pdd->qpd; - - if (!pdd || !dqm || !qpd) + if (!dqm || !qpd) return; mm = get_task_mm(pdd->process->lead_thread);