|
@@ -1018,8 +1018,12 @@ static void ixgbe_free_q_vector(struct ixgbe_adapter *adapter, int v_idx)
|
|
|
struct ixgbe_q_vector *q_vector = adapter->q_vector[v_idx];
|
|
|
struct ixgbe_ring *ring;
|
|
|
|
|
|
- ixgbe_for_each_ring(ring, q_vector->tx)
|
|
|
- adapter->tx_ring[ring->queue_index] = NULL;
|
|
|
+ ixgbe_for_each_ring(ring, q_vector->tx) {
|
|
|
+ if (ring_is_xdp(ring))
|
|
|
+ adapter->xdp_ring[ring->queue_index] = NULL;
|
|
|
+ else
|
|
|
+ adapter->tx_ring[ring->queue_index] = NULL;
|
|
|
+ }
|
|
|
|
|
|
ixgbe_for_each_ring(ring, q_vector->rx)
|
|
|
adapter->rx_ring[ring->queue_index] = NULL;
|