aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ixgbe
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@intel.com>2010-11-16 22:27:10 -0500
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2010-11-16 22:27:10 -0500
commit2274543f15133165b855b9a4a1503b2c1268c6cf (patch)
tree4cec26b62de2d001998319850cdd332e4f5019eb /drivers/net/ixgbe
parentd0759ebb051972f8557a19aa13cf02fc314856e9 (diff)
ixgbe: populate the ring->q_vector pointer during ring mapping
The q_vector back pointer was not being set in the rings so it would not have been possible to determine the parent q_vector of the ring. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Tested-by: Ross Brattain <ross.b.brattain@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ixgbe')
-rw-r--r--drivers/net/ixgbe/ixgbe_main.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c
index 0d6422c59723..38dd85340352 100644
--- a/drivers/net/ixgbe/ixgbe_main.c
+++ b/drivers/net/ixgbe/ixgbe_main.c
@@ -2113,18 +2113,22 @@ static inline void map_vector_to_rxq(struct ixgbe_adapter *a, int v_idx,
2113 int r_idx) 2113 int r_idx)
2114{ 2114{
2115 struct ixgbe_q_vector *q_vector = a->q_vector[v_idx]; 2115 struct ixgbe_q_vector *q_vector = a->q_vector[v_idx];
2116 struct ixgbe_ring *rx_ring = a->rx_ring[r_idx];
2116 2117
2117 set_bit(r_idx, q_vector->rxr_idx); 2118 set_bit(r_idx, q_vector->rxr_idx);
2118 q_vector->rxr_count++; 2119 q_vector->rxr_count++;
2120 rx_ring->q_vector = q_vector;
2119} 2121}
2120 2122
2121static inline void map_vector_to_txq(struct ixgbe_adapter *a, int v_idx, 2123static inline void map_vector_to_txq(struct ixgbe_adapter *a, int v_idx,
2122 int t_idx) 2124 int t_idx)
2123{ 2125{
2124 struct ixgbe_q_vector *q_vector = a->q_vector[v_idx]; 2126 struct ixgbe_q_vector *q_vector = a->q_vector[v_idx];
2127 struct ixgbe_ring *tx_ring = a->tx_ring[t_idx];
2125 2128
2126 set_bit(t_idx, q_vector->txr_idx); 2129 set_bit(t_idx, q_vector->txr_idx);
2127 q_vector->txr_count++; 2130 q_vector->txr_count++;
2131 tx_ring->q_vector = q_vector;
2128} 2132}
2129 2133
2130/** 2134/**