summaryrefslogtreecommitdiff
path: root/drivers/gpu/msm/kgsl_iommu.c
diff options
context:
space:
mode:
authorArchana Sriram <apsrir@codeaurora.org>2020-10-18 23:34:04 +0530
committerKamal Agrawal <kamaagra@codeaurora.org>2020-11-10 08:22:19 +0530
commit703cccfc832e2c42abdfb3eb03e7645059f0b7c2 (patch)
tree207fd0847e05dfb40365a86957a7b8e2b47edb8f /drivers/gpu/msm/kgsl_iommu.c
parentb81c4ac933f0bcbfa2bad5886c4013f8da52c86a (diff)
msm: kgsl: Compare pid pointer instead of TGID for a new process
There is a possibility of sharing process_private between two unrelated processes due to PID wrapping. In kgsl_process_private_new(), instead of checking numeric TGID, compare the unique pid pointer of the current process with that of the existing processes in kgsl process list to allow sharing of process_private data judiciously. Also, in all required functions get TGID/PID of a process from its struct pid. Change-Id: I0e3d5d79275cdb3f3c304fb36322ad56b0d0b227 Signed-off-by: Archana Sriram <apsrir@codeaurora.org> Signed-off-by: Kamal Agrawal <kamaagra@codeaurora.org>
Diffstat (limited to 'drivers/gpu/msm/kgsl_iommu.c')
-rw-r--r--drivers/gpu/msm/kgsl_iommu.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/msm/kgsl_iommu.c b/drivers/gpu/msm/kgsl_iommu.c
index f6ff4658c93b..aff54105474a 100644
--- a/drivers/gpu/msm/kgsl_iommu.c
+++ b/drivers/gpu/msm/kgsl_iommu.c
@@ -692,7 +692,7 @@ static void _get_entries(struct kgsl_process_private *private,
prev->flags = p->memdesc.flags;
prev->priv = p->memdesc.priv;
prev->pending_free = p->pending_free;
- prev->pid = private->pid;
+ prev->pid = pid_nr(private->pid);
__kgsl_get_memory_usage(prev);
}
@@ -702,7 +702,7 @@ static void _get_entries(struct kgsl_process_private *private,
next->flags = n->memdesc.flags;
next->priv = n->memdesc.priv;
next->pending_free = n->pending_free;
- next->pid = private->pid;
+ next->pid = pid_nr(private->pid);
__kgsl_get_memory_usage(next);
}
}