diff options
author | Jia-Ju Bai <baijiaju1990@gmail.com> | 2022-03-05 00:58:16 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-03-07 11:27:12 +0000 |
commit | d0aeb0d4a3f7d2a0df7e9545892bbeede8f2ac7e (patch) | |
tree | 094ea56af95b3b2a7de1b321868c5db9519e3841 | |
parent | afb3cc1a397d77771f342691b7e6b032a234d7f2 (diff) | |
download | linux-d0aeb0d4a3f7d2a0df7e9545892bbeede8f2ac7e.tar.gz linux-d0aeb0d4a3f7d2a0df7e9545892bbeede8f2ac7e.tar.bz2 linux-d0aeb0d4a3f7d2a0df7e9545892bbeede8f2ac7e.zip |
isdn: hfcpci: check the return value of dma_set_mask() in setup_hw()
The function dma_set_mask() in setup_hw() can fail, so its return value
should be checked.
Fixes: 1700fe1a10dc ("Add mISDN HFC PCI driver")
Reported-by: TOTE Robot <oslab@tsinghua.edu.cn>
Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/isdn/hardware/mISDN/hfcpci.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/isdn/hardware/mISDN/hfcpci.c b/drivers/isdn/hardware/mISDN/hfcpci.c index bd087cca1c1d..af17459c1a5c 100644 --- a/drivers/isdn/hardware/mISDN/hfcpci.c +++ b/drivers/isdn/hardware/mISDN/hfcpci.c @@ -2005,7 +2005,11 @@ setup_hw(struct hfc_pci *hc) } /* Allocate memory for FIFOS */ /* the memory needs to be on a 32k boundary within the first 4G */ - dma_set_mask(&hc->pdev->dev, 0xFFFF8000); + if (dma_set_mask(&hc->pdev->dev, 0xFFFF8000)) { + printk(KERN_WARNING + "HFC-PCI: No usable DMA configuration!\n"); + return -EIO; + } buffer = dma_alloc_coherent(&hc->pdev->dev, 0x8000, &hc->hw.dmahandle, GFP_KERNEL); /* We silently assume the address is okay if nonzero */ |