]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/tegra: nvdec: Fix dma_alloc_coherent error check
authorMikko Perttunen <mperttunen@nvidia.com>
Wed, 2 Jul 2025 02:08:07 +0000 (11:08 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jul 2025 16:35:18 +0000 (18:35 +0200)
[ Upstream commit 44306a684cd1699b8562a54945ddc43e2abc9eab ]

Check for NULL return value with dma_alloc_coherent, in line with
Robin's fix for vic.c in 'drm/tegra: vic: Fix DMA API misuse'.

Fixes: 46f226c93d35 ("drm/tegra: Add NVDEC driver")
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20250702-nvdec-dma-error-check-v1-1-c388b402c53a@nvidia.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/tegra/nvdec.c

index 4860790666af51de98a34942c61856bf3c766c8b..14ef61b44f47cd8306d8d635af207df58c781a87 100644 (file)
@@ -261,10 +261,8 @@ static int nvdec_load_falcon_firmware(struct nvdec *nvdec)
 
        if (!client->group) {
                virt = dma_alloc_coherent(nvdec->dev, size, &iova, GFP_KERNEL);
-
-               err = dma_mapping_error(nvdec->dev, iova);
-               if (err < 0)
-                       return err;
+               if (!virt)
+                       return -ENOMEM;
        } else {
                virt = tegra_drm_alloc(tegra, size, &iova);
                if (IS_ERR(virt))