]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/msm: Fix dma_free_attrs() buffer size
authorThomas Fourier <fourier.thomas@gmail.com>
Thu, 26 Feb 2026 09:57:11 +0000 (10:57 +0100)
committerRob Clark <robin.clark@oss.qualcomm.com>
Tue, 3 Mar 2026 18:39:06 +0000 (10:39 -0800)
The gpummu->table buffer is alloc'd with size TABLE_SIZE + 32 in
a2xx_gpummu_new() but freed with size TABLE_SIZE in
a2xx_gpummu_destroy().

Change the free size to match the allocation.

Fixes: c2052a4e5c99 ("drm/msm: implement a2xx mmu")
Cc: <stable@vger.kernel.org>
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/707340/
Message-ID: <20260226095714.12126-2-fourier.thomas@gmail.com>
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
drivers/gpu/drm/msm/adreno/a2xx_gpummu.c

index 0407c9bc8c1bf45688f1dc9b924435a590a587af..4467b04527cd16827ad8654e3c930b4eac9e25e1 100644 (file)
@@ -78,7 +78,7 @@ static void a2xx_gpummu_destroy(struct msm_mmu *mmu)
 {
        struct a2xx_gpummu *gpummu = to_a2xx_gpummu(mmu);
 
-       dma_free_attrs(mmu->dev, TABLE_SIZE, gpummu->table, gpummu->pt_base,
+       dma_free_attrs(mmu->dev, TABLE_SIZE + 32, gpummu->table, gpummu->pt_base,
                DMA_ATTR_FORCE_CONTIGUOUS);
 
        kfree(gpummu);