Commit 73fbe8be authored by Roland Dreier's avatar Roland Dreier

IPoIB: Check for DMA mapping error for TX packets

Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
parent 1031bfb9
...@@ -355,6 +355,11 @@ void ipoib_send(struct net_device *dev, struct sk_buff *skb, ...@@ -355,6 +355,11 @@ void ipoib_send(struct net_device *dev, struct sk_buff *skb,
tx_req->skb = skb; tx_req->skb = skb;
addr = dma_map_single(priv->ca->dma_device, skb->data, skb->len, addr = dma_map_single(priv->ca->dma_device, skb->data, skb->len,
DMA_TO_DEVICE); DMA_TO_DEVICE);
if (unlikely(dma_mapping_error(addr))) {
++priv->stats.tx_errors;
dev_kfree_skb_any(skb);
return;
}
pci_unmap_addr_set(tx_req, mapping, addr); pci_unmap_addr_set(tx_req, mapping, addr);
if (unlikely(post_send(priv, priv->tx_head & (ipoib_sendq_size - 1), if (unlikely(post_send(priv, priv->tx_head & (ipoib_sendq_size - 1),
......
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