Added a pci_dma_mapping_error() call to check for mapping errors before
further using the dma handle. Unchecked dma handles were found using
Coccinelle:

@rule1@
expression e1;
identifier x;
@@

*x = pci_map_single(...);
 ... when != pci_dma_mapping_error(e1,x)

Signed-off-by: Tina Johnson <[email protected]>
Acked-by: Julia Lawall <[email protected]>
---
 drivers/atm/eni.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/atm/eni.c b/drivers/atm/eni.c
index d65975a..6450a36 100644
--- a/drivers/atm/eni.c
+++ b/drivers/atm/eni.c
@@ -356,6 +356,8 @@ static int do_rx_dma(struct atm_vcc *vcc,struct sk_buff 
*skb,
        if (skb) {
                paddr = pci_map_single(eni_dev->pci_dev,skb->data,skb->len,
                    PCI_DMA_FROMDEVICE);
+               if (pci_dma_mapping_error(eni_dev->pci_dev, paddr))
+                       goto trouble;
                ENI_PRV_PADDR(skb) = paddr;
                if (paddr & 3)
                        printk(KERN_CRIT DEV_LABEL "(itf %d): VCI %d has "
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to