diff options
| -rw-r--r-- | drivers/net/ethernet/intel/fm10k/fm10k_main.c | 14 | ||||
| -rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 10 |
2 files changed, 14 insertions, 10 deletions
diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_main.c b/drivers/net/ethernet/intel/fm10k/fm10k_main.c index 538b42d5c187..8e12aae065d8 100644 --- a/drivers/net/ethernet/intel/fm10k/fm10k_main.c +++ b/drivers/net/ethernet/intel/fm10k/fm10k_main.c | |||
| @@ -446,13 +446,13 @@ static void fm10k_type_trans(struct fm10k_ring *rx_ring, | |||
| 446 | 446 | ||
| 447 | skb->protocol = eth_type_trans(skb, dev); | 447 | skb->protocol = eth_type_trans(skb, dev); |
| 448 | 448 | ||
| 449 | /* Record Rx queue, or update macvlan statistics */ | ||
| 449 | if (!l2_accel) | 450 | if (!l2_accel) |
| 450 | return; | 451 | skb_record_rx_queue(skb, rx_ring->queue_index); |
| 451 | 452 | else | |
| 452 | /* update MACVLAN statistics */ | 453 | macvlan_count_rx(netdev_priv(dev), skb->len + ETH_HLEN, true, |
| 453 | macvlan_count_rx(netdev_priv(dev), skb->len + ETH_HLEN, 1, | 454 | (skb->pkt_type == PACKET_BROADCAST) || |
| 454 | !!(rx_desc->w.hdr_info & | 455 | (skb->pkt_type == PACKET_MULTICAST)); |
| 455 | cpu_to_le16(FM10K_RXD_HDR_INFO_XC_MASK))); | ||
| 456 | } | 456 | } |
| 457 | 457 | ||
| 458 | /** | 458 | /** |
| @@ -479,8 +479,6 @@ static unsigned int fm10k_process_skb_fields(struct fm10k_ring *rx_ring, | |||
| 479 | 479 | ||
| 480 | FM10K_CB(skb)->fi.w.vlan = rx_desc->w.vlan; | 480 | FM10K_CB(skb)->fi.w.vlan = rx_desc->w.vlan; |
| 481 | 481 | ||
| 482 | skb_record_rx_queue(skb, rx_ring->queue_index); | ||
| 483 | |||
| 484 | FM10K_CB(skb)->fi.d.glort = rx_desc->d.glort; | 482 | FM10K_CB(skb)->fi.d.glort = rx_desc->d.glort; |
| 485 | 483 | ||
| 486 | if (rx_desc->w.vlan) { | 484 | if (rx_desc->w.vlan) { |
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 42b4f4cee3d6..048c7bc76b91 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |||
| @@ -1749,9 +1749,15 @@ static void ixgbe_process_skb_fields(struct ixgbe_ring *rx_ring, | |||
| 1749 | __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), vid); | 1749 | __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), vid); |
| 1750 | } | 1750 | } |
| 1751 | 1751 | ||
| 1752 | skb_record_rx_queue(skb, rx_ring->queue_index); | ||
| 1753 | |||
| 1754 | skb->protocol = eth_type_trans(skb, dev); | 1752 | skb->protocol = eth_type_trans(skb, dev); |
| 1753 | |||
| 1754 | /* record Rx queue, or update MACVLAN statistics */ | ||
| 1755 | if (netif_is_ixgbe(dev)) | ||
| 1756 | skb_record_rx_queue(skb, rx_ring->queue_index); | ||
| 1757 | else | ||
| 1758 | macvlan_count_rx(netdev_priv(dev), skb->len + ETH_HLEN, true, | ||
| 1759 | (skb->pkt_type == PACKET_BROADCAST) || | ||
| 1760 | (skb->pkt_type == PACKET_MULTICAST)); | ||
| 1755 | } | 1761 | } |
| 1756 | 1762 | ||
| 1757 | static void ixgbe_rx_skb(struct ixgbe_q_vector *q_vector, | 1763 | static void ixgbe_rx_skb(struct ixgbe_q_vector *q_vector, |
