diff options
author | Jiasheng Jiang | 2021-12-04 08:03:26 +0800 |
---|---|---|
committer | Greg Kroah-Hartman | 2021-12-05 14:25:00 +0100 |
commit | eec91694f927d1026974444eb6a3adccd4f1cbc2 (patch) | |
tree | 8486945ad7fe5f4126d56c75a3ea5355e677e818 /drivers/uio | |
parent | 70602b37c4afd91c4dfc237121b31310b6c02a7a (diff) |
uio: uio_dmem_genirq: Catch the Exception
The return value of dma_set_coherent_mask() is not always 0.
To catch the exception in case that dma is not support the mask.
Fixes: 0a0c3b5a24bd ("Add new uio device for dynamic memory allocation")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Link: https://lore.kernel.org/r/20211204000326.1592687-1-jiasheng@iscas.ac.cn
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/uio')
-rw-r--r-- | drivers/uio/uio_dmem_genirq.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/uio/uio_dmem_genirq.c b/drivers/uio/uio_dmem_genirq.c index 6b5cfa5b0673..1106f3376404 100644 --- a/drivers/uio/uio_dmem_genirq.c +++ b/drivers/uio/uio_dmem_genirq.c @@ -188,7 +188,11 @@ static int uio_dmem_genirq_probe(struct platform_device *pdev) return -ENOMEM; } - dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32)); + ret = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32)); + if (ret) { + dev_err(&pdev->dev, "DMA enable failed\n"); + return ret; + } priv->uioinfo = uioinfo; spin_lock_init(&priv->lock); |