Ver Fonte

rt2x00: Optimize unmapping of skbs

Since no skb will be mapped for RX and TX at the same time we can
simply shortcut the check for SKBDESC_DMA_MAPPED_TX.

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Helmut Schaa há 14 anos atrás
pai
commit
546adf294e
1 ficheiros alterados com 1 adições e 3 exclusões
  1. 1 3
      drivers/net/wireless/rt2x00/rt2x00queue.c

+ 1 - 3
drivers/net/wireless/rt2x00/rt2x00queue.c

@@ -115,9 +115,7 @@ void rt2x00queue_unmap_skb(struct rt2x00_dev *rt2x00dev, struct sk_buff *skb)
 		dma_unmap_single(rt2x00dev->dev, skbdesc->skb_dma, skb->len,
 		dma_unmap_single(rt2x00dev->dev, skbdesc->skb_dma, skb->len,
 				 DMA_FROM_DEVICE);
 				 DMA_FROM_DEVICE);
 		skbdesc->flags &= ~SKBDESC_DMA_MAPPED_RX;
 		skbdesc->flags &= ~SKBDESC_DMA_MAPPED_RX;
-	}
-
-	if (skbdesc->flags & SKBDESC_DMA_MAPPED_TX) {
+	} else if (skbdesc->flags & SKBDESC_DMA_MAPPED_TX) {
 		dma_unmap_single(rt2x00dev->dev, skbdesc->skb_dma, skb->len,
 		dma_unmap_single(rt2x00dev->dev, skbdesc->skb_dma, skb->len,
 				 DMA_TO_DEVICE);
 				 DMA_TO_DEVICE);
 		skbdesc->flags &= ~SKBDESC_DMA_MAPPED_TX;
 		skbdesc->flags &= ~SKBDESC_DMA_MAPPED_TX;