summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnny Liu <johnliu@nvidia.com>2023-09-01 14:59:09 +0300
committerThierry Reding <treding@nvidia.com>2023-10-11 22:52:44 +0200
commite889a311f74f4ae8bd40755a2c58d02e1c684fef (patch)
tree980824877b9b3bf77076f45346f094c6028190dd
parentf017f1e9cb3458a86f586a171e284e2ec46286db (diff)
gpu: host1x: Correct allocated size for contexts
Original implementation over allocates the memory size for the contexts list. The size of memory for the contexts list is based on the number of iommu groups specified in the device tree. Fixes: 8aa5bcb61612 ("gpu: host1x: Add context device management code") Signed-off-by: Johnny Liu <johnliu@nvidia.com> Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230901115910.701518-1-cyndis@kapsi.fi
-rw-r--r--drivers/gpu/host1x/context.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/host1x/context.c b/drivers/gpu/host1x/context.c
index a3f336edd991..955c971c528d 100644
--- a/drivers/gpu/host1x/context.c
+++ b/drivers/gpu/host1x/context.c
@@ -34,10 +34,10 @@ int host1x_memory_context_list_init(struct host1x *host1x)
if (err < 0)
return 0;
- cdl->devs = kcalloc(err, sizeof(*cdl->devs), GFP_KERNEL);
+ cdl->len = err / 4;
+ cdl->devs = kcalloc(cdl->len, sizeof(*cdl->devs), GFP_KERNEL);
if (!cdl->devs)
return -ENOMEM;
- cdl->len = err / 4;
for (i = 0; i < cdl->len; i++) {
ctx = &cdl->devs[i];