Messages in this thread Patch in this message | ![/](/images/icornerl.gif) | | From | Andrey Shumilin <> | Subject | [PATCH 4/4] gntdev: Unchecked finction result | Date | Thu, 29 Feb 2024 16:31:19 +0300 |
| |
The dma_coerce_mask_and_coherent function may refuse to apply a mask due to incorrectly passed parameters. But since this function returns the error -EIO, this is an abnormal situation and the error must be written to the log.
Signed-off-by: Andrey Shumilin <shum.sdl@nppct.ru> Found by Linux Verification Center (linuxtesting.org) with SVACE. --- drivers/xen/gntdev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c index 61faea1f0663..8a448dbbca86 100644 --- a/drivers/xen/gntdev.c +++ b/drivers/xen/gntdev.c @@ -597,7 +597,8 @@ static int gntdev_open(struct inode *inode, struct file *flip) flip->private_data = priv; #ifdef CONFIG_XEN_GRANT_DMA_ALLOC priv->dma_dev = gntdev_miscdev.this_device; - dma_coerce_mask_and_coherent(priv->dma_dev, DMA_BIT_MASK(64)); + if (dma_coerce_mask_and_coherent(priv->dma_dev, DMA_BIT_MASK(64)) == -EIO) + printk(KERN_INFO "The mask was applied unsuccessfully"); #endif pr_debug("priv %p\n", priv); -- 2.30.2
| ![\](/images/icornerr.gif) |