diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2009-05-06 06:43:47 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-05-06 18:33:46 -0400 |
commit | fdaff1ceac32e1748353e91a420c18141ea153c0 (patch) | |
tree | 76af85bfdc2760b4aa6700ed4795035313f2f8c8 /drivers/net/ixgbe/ixgbe_main.c | |
parent | 7a921c93626e7481b5d8788d8511995aa2d2b591 (diff) |
ixgbe: skb_record_rx_queue should record rx queue instead of vector
currently ixgbe_receive_skb is passing the vector index to
skb_record_rx_queue instead of the queue index. This patch changes that so
that the ring index is passed instead.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ixgbe/ixgbe_main.c')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_main.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index 165bfa600b4b..2c70fa0add3e 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -461,6 +461,7 @@ static int __ixgbe_notify_dca(struct device *dev, void *data) | |||
461 | **/ | 461 | **/ |
462 | static void ixgbe_receive_skb(struct ixgbe_q_vector *q_vector, | 462 | static void ixgbe_receive_skb(struct ixgbe_q_vector *q_vector, |
463 | struct sk_buff *skb, u8 status, | 463 | struct sk_buff *skb, u8 status, |
464 | struct ixgbe_ring *ring, | ||
464 | union ixgbe_adv_rx_desc *rx_desc) | 465 | union ixgbe_adv_rx_desc *rx_desc) |
465 | { | 466 | { |
466 | struct ixgbe_adapter *adapter = q_vector->adapter; | 467 | struct ixgbe_adapter *adapter = q_vector->adapter; |
@@ -468,7 +469,7 @@ static void ixgbe_receive_skb(struct ixgbe_q_vector *q_vector, | |||
468 | bool is_vlan = (status & IXGBE_RXD_STAT_VP); | 469 | bool is_vlan = (status & IXGBE_RXD_STAT_VP); |
469 | u16 tag = le16_to_cpu(rx_desc->wb.upper.vlan); | 470 | u16 tag = le16_to_cpu(rx_desc->wb.upper.vlan); |
470 | 471 | ||
471 | skb_record_rx_queue(skb, q_vector->v_idx); | 472 | skb_record_rx_queue(skb, ring->queue_index); |
472 | if (!(adapter->flags & IXGBE_FLAG_IN_NETPOLL)) { | 473 | if (!(adapter->flags & IXGBE_FLAG_IN_NETPOLL)) { |
473 | if (adapter->vlgrp && is_vlan && (tag != 0)) | 474 | if (adapter->vlgrp && is_vlan && (tag != 0)) |
474 | vlan_gro_receive(napi, adapter->vlgrp, tag, skb); | 475 | vlan_gro_receive(napi, adapter->vlgrp, tag, skb); |
@@ -782,7 +783,7 @@ static bool ixgbe_clean_rx_irq(struct ixgbe_q_vector *q_vector, | |||
782 | total_rx_packets++; | 783 | total_rx_packets++; |
783 | 784 | ||
784 | skb->protocol = eth_type_trans(skb, adapter->netdev); | 785 | skb->protocol = eth_type_trans(skb, adapter->netdev); |
785 | ixgbe_receive_skb(q_vector, skb, staterr, rx_desc); | 786 | ixgbe_receive_skb(q_vector, skb, staterr, rx_ring, rx_desc); |
786 | 787 | ||
787 | next_desc: | 788 | next_desc: |
788 | rx_desc->wb.upper.status_error = 0; | 789 | rx_desc->wb.upper.status_error = 0; |