mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-19 18:53:52 +08:00
staging: rtl8192e: Fix failure to check pci_map_single()
Beginning with kernel 3.8, the DMA mapping routines issue a warning for the first call to pci_map_single() that is not checked with a pci_dma_mapping_error() call. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
0d826c3919
commit
2dcb4a298c
@ -1183,6 +1183,8 @@ void rtl8192_tx_fill_desc(struct net_device *dev, struct tx_desc *pdesc,
|
||||
pTxFwInfo->TxRate,
|
||||
cb_desc);
|
||||
|
||||
if (pci_dma_mapping_error(priv->pdev, mapping))
|
||||
RT_TRACE(COMP_ERR, "DMA Mapping error\n");;
|
||||
if (cb_desc->bAMPDUEnable) {
|
||||
pTxFwInfo->AllowAggregation = 1;
|
||||
pTxFwInfo->RxMF = cb_desc->ampdu_factor;
|
||||
@ -1280,6 +1282,8 @@ void rtl8192_tx_fill_cmd_desc(struct net_device *dev,
|
||||
dma_addr_t mapping = pci_map_single(priv->pdev, skb->data, skb->len,
|
||||
PCI_DMA_TODEVICE);
|
||||
|
||||
if (pci_dma_mapping_error(priv->pdev, mapping))
|
||||
RT_TRACE(COMP_ERR, "DMA Mapping error\n");;
|
||||
memset(entry, 0, 12);
|
||||
entry->LINIP = cb_desc->bLastIniPkt;
|
||||
entry->FirstSeg = 1;
|
||||
|
@ -2104,7 +2104,10 @@ static short rtl8192_alloc_rx_desc_ring(struct net_device *dev)
|
||||
skb_tail_pointer_rsl(skb),
|
||||
priv->rxbuffersize,
|
||||
PCI_DMA_FROMDEVICE);
|
||||
|
||||
if (pci_dma_mapping_error(priv->pdev, *mapping)) {
|
||||
dev_kfree_skb_any(skb);
|
||||
return -1;
|
||||
}
|
||||
entry->BufferAddress = cpu_to_le32(*mapping);
|
||||
|
||||
entry->Length = priv->rxbuffersize;
|
||||
@ -2397,7 +2400,11 @@ static void rtl8192_rx_normal(struct net_device *dev)
|
||||
skb_tail_pointer_rsl(skb),
|
||||
priv->rxbuffersize,
|
||||
PCI_DMA_FROMDEVICE);
|
||||
|
||||
if (pci_dma_mapping_error(priv->pdev,
|
||||
*((dma_addr_t *)skb->cb))) {
|
||||
dev_kfree_skb_any(skb);
|
||||
return;
|
||||
}
|
||||
}
|
||||
done:
|
||||
pdesc->BufferAddress = cpu_to_le32(*((dma_addr_t *)skb->cb));
|
||||
|
Loading…
Reference in New Issue
Block a user