diff options
Diffstat (limited to 'drivers/net/ethernet/intel/ixgbe/ixgbe_main.c')
-rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 0da5aa2c8aba..9fc063af233c 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |||
@@ -1888,6 +1888,14 @@ static void ixgbe_dma_sync_frag(struct ixgbe_ring *rx_ring, | |||
1888 | ixgbe_rx_pg_size(rx_ring), | 1888 | ixgbe_rx_pg_size(rx_ring), |
1889 | DMA_FROM_DEVICE, | 1889 | DMA_FROM_DEVICE, |
1890 | IXGBE_RX_DMA_ATTR); | 1890 | IXGBE_RX_DMA_ATTR); |
1891 | } else if (ring_uses_build_skb(rx_ring)) { | ||
1892 | unsigned long offset = (unsigned long)(skb->data) & ~PAGE_MASK; | ||
1893 | |||
1894 | dma_sync_single_range_for_cpu(rx_ring->dev, | ||
1895 | IXGBE_CB(skb)->dma, | ||
1896 | offset, | ||
1897 | skb_headlen(skb), | ||
1898 | DMA_FROM_DEVICE); | ||
1891 | } else { | 1899 | } else { |
1892 | struct skb_frag_struct *frag = &skb_shinfo(skb)->frags[0]; | 1900 | struct skb_frag_struct *frag = &skb_shinfo(skb)->frags[0]; |
1893 | 1901 | ||