Commit a455178e authored by Pan Bian's avatar Pan Bian Committed by Greg Kroah-Hartman

staging: comedi: addi_apci_3xxx: check return value

Function pci_ioremap_bar() will return a NULL pointer if there is no
enough memory. However, in function apci3xxx_auto_attach(), the return
value of function pci_ioremap_bar() is not validated. This may result in
NULL dereference in following access to dev->mmio. This patch fixes the
bug.
Signed-off-by: default avatarPan Bian <bianpan2016@163.com>
Reviewed-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 255364f7
...@@ -787,6 +787,8 @@ static int apci3xxx_auto_attach(struct comedi_device *dev, ...@@ -787,6 +787,8 @@ static int apci3xxx_auto_attach(struct comedi_device *dev,
dev->iobase = pci_resource_start(pcidev, 2); dev->iobase = pci_resource_start(pcidev, 2);
dev->mmio = pci_ioremap_bar(pcidev, 3); dev->mmio = pci_ioremap_bar(pcidev, 3);
if (!dev->mmio)
return -ENOMEM;
if (pcidev->irq > 0) { if (pcidev->irq > 0) {
ret = request_irq(pcidev->irq, apci3xxx_irq_handler, ret = request_irq(pcidev->irq, apci3xxx_irq_handler,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment