diff options
| author | Felix Gu <ustc.gu@gmail.com> | 2026-03-17 20:21:55 +0300 |
|---|---|---|
| committer | Hans Verkuil <hverkuil+cisco@kernel.org> | 2026-05-05 17:57:02 +0300 |
| commit | e8f319eae96a3d718e810d52432020a2b77f5f60 (patch) | |
| tree | a92f547d5d12ee50d0a68fef9f2f98d8f30692b9 | |
| parent | 5e78a431a3f74c632351791d7902c60199d1ce83 (diff) | |
| download | linux-e8f319eae96a3d718e810d52432020a2b77f5f60.tar.xz | |
media: ti: vpe: Fix the error code of devm_kzalloc() in vip_probe_slice()
In vip_probe_slice(), the error check for devm_kzalloc() incorrectly
uses PTR_ERR_OR_ZERO() which returns 0 for NULL pointer.
Return -ENOMEM for devm_kzalloc() failure.
Fixes: fc2873aa4a21 ("media: ti: vpe: Add the VIP driver")
Cc: stable@vger.kernel.org
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
| -rw-r--r-- | drivers/media/platform/ti/vpe/vip.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/media/platform/ti/vpe/vip.c b/drivers/media/platform/ti/vpe/vip.c index bd34c982b427..cb0a5a07a3d4 100644 --- a/drivers/media/platform/ti/vpe/vip.c +++ b/drivers/media/platform/ti/vpe/vip.c @@ -3490,7 +3490,7 @@ static int vip_probe_slice(struct platform_device *pdev, int slice) parser = devm_kzalloc(&pdev->dev, sizeof(*dev->parser), GFP_KERNEL); if (!parser) - return PTR_ERR_OR_ZERO(parser); + return -ENOMEM; parser->base = dev->base + (slice ? VIP_SLICE1_PARSER : VIP_SLICE0_PARSER); if (IS_ERR(parser->base)) @@ -3502,7 +3502,7 @@ static int vip_probe_slice(struct platform_device *pdev, int slice) dev->sc_assigned = VIP_NOT_ASSIGNED; sc = devm_kzalloc(&pdev->dev, sizeof(*dev->sc), GFP_KERNEL); if (!sc) - return PTR_ERR_OR_ZERO(sc); + return -ENOMEM; sc->base = dev->base + (slice ? VIP_SLICE1_SC : VIP_SLICE0_SC); if (IS_ERR(sc->base)) @@ -3514,7 +3514,7 @@ static int vip_probe_slice(struct platform_device *pdev, int slice) dev->csc_assigned = VIP_NOT_ASSIGNED; csc = devm_kzalloc(&pdev->dev, sizeof(*dev->csc), GFP_KERNEL); if (!csc) - return PTR_ERR_OR_ZERO(csc); + return -ENOMEM; csc->base = dev->base + (slice ? VIP_SLICE1_CSC : VIP_SLICE0_CSC); if (IS_ERR(csc->base)) |
