diff options
author | Dan Carpenter <dan.carpenter@linaro.org> | 2025-08-11 10:18:07 -0400 |
---|---|---|
committer | Hans Verkuil <hverkuil+cisco@kernel.org> | 2025-08-18 09:55:04 +0200 |
commit | 6347dc7fb967521a77f9ff0774d25ef0cca4c6cd (patch) | |
tree | bd434084e2476e8c8f89cdb6b66fe5b237709394 | |
parent | 8f5ae30d69d7543eee0d70083daf4de8fe15d585 (diff) |
media: rkvdec: Fix a NULL vs IS_ERR() bug in probe()
The iommu_paging_domain_alloc() function doesn't return NULL on error it
returns error pointers. Update the check and then set ->empty_domain to
NULL because the rest of the driver assumes it can be NULL.
Fixes: ff8c5622f9f7 ("media: rkvdec: Restore iommu addresses on errors")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Tested-by: Detlev Casanova <detlev.casanova@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
-rw-r--r-- | drivers/media/platform/rockchip/rkvdec/rkvdec.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec.c b/drivers/media/platform/rockchip/rkvdec/rkvdec.c index d707088ec0dc..1b7f27e4d961 100644 --- a/drivers/media/platform/rockchip/rkvdec/rkvdec.c +++ b/drivers/media/platform/rockchip/rkvdec/rkvdec.c @@ -1162,8 +1162,10 @@ static int rkvdec_probe(struct platform_device *pdev) if (iommu_get_domain_for_dev(&pdev->dev)) { rkvdec->empty_domain = iommu_paging_domain_alloc(rkvdec->dev); - if (!rkvdec->empty_domain) + if (IS_ERR(rkvdec->empty_domain)) { + rkvdec->empty_domain = NULL; dev_warn(rkvdec->dev, "cannot alloc new empty domain\n"); + } } vb2_dma_contig_set_max_seg_size(&pdev->dev, DMA_BIT_MASK(32)); |