[PATCH v2] vgem: fix error return in vgem_init()
From: Alexandr Sapozhnkiov
Date: Thu Oct 02 2025 - 05:19:08 EST
From: Alexandr Sapozhnikov <alsp705@xxxxxxxxx>
The dma_coerce_mask_and_coherent function may
fail to apply a mask due to incorrectly passed parameters.
However, since this function returns the -EIO error,
this is an abnormal situation and the error should be logged.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Signed-off-by: Alexandr Sapozhnikov <alsp705@xxxxxxxxx>
---
drivers/gpu/drm/vgem/vgem_drv.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vgem/vgem_drv.c b/drivers/gpu/drm/vgem/vgem_drv.c
index c5e3e5457737..dc132dd44b9e 100644
--- a/drivers/gpu/drm/vgem/vgem_drv.c
+++ b/drivers/gpu/drm/vgem/vgem_drv.c
@@ -140,8 +140,10 @@ static int __init vgem_init(void)
goto out_unregister;
}
- dma_coerce_mask_and_coherent(&pdev->dev,
+ ret = dma_coerce_mask_and_coherent(&pdev->dev,
DMA_BIT_MASK(64));
+ if (ret)
+ goto out_unregister;
vgem_device = devm_drm_dev_alloc(&pdev->dev, &vgem_driver,
struct vgem_device, drm);
--
2.43.0