Lines Matching refs:q_vector

1110 static bool ixgbe_clean_tx_irq(struct ixgbe_q_vector *q_vector,  in ixgbe_clean_tx_irq()  argument
1113 struct ixgbe_adapter *adapter = q_vector->adapter; in ixgbe_clean_tx_irq()
1117 unsigned int budget = q_vector->tx.work_limit; in ixgbe_clean_tx_irq()
1209 q_vector->tx.total_bytes += total_bytes; in ixgbe_clean_tx_irq()
1210 q_vector->tx.total_packets += total_packets; in ixgbe_clean_tx_irq()
1341 static void ixgbe_update_dca(struct ixgbe_q_vector *q_vector) in ixgbe_update_dca() argument
1343 struct ixgbe_adapter *adapter = q_vector->adapter; in ixgbe_update_dca()
1347 if (q_vector->cpu == cpu) in ixgbe_update_dca()
1350 ixgbe_for_each_ring(ring, q_vector->tx) in ixgbe_update_dca()
1353 ixgbe_for_each_ring(ring, q_vector->rx) in ixgbe_update_dca()
1356 q_vector->cpu = cpu; in ixgbe_update_dca()
1374 adapter->q_vector[i]->cpu = -1; in ixgbe_setup_dca()
1375 ixgbe_update_dca(adapter->q_vector[i]); in ixgbe_setup_dca()
1684 u32 flags = rx_ring->q_vector->adapter->flags; in ixgbe_process_skb_fields()
1714 void ixgbe_rx_skb(struct ixgbe_q_vector *q_vector, in ixgbe_rx_skb() argument
1717 napi_gro_receive(&q_vector->napi, skb); in ixgbe_rx_skb()
2122 skb = napi_alloc_skb(&rx_ring->q_vector->napi, IXGBE_RX_HDR_SIZE); in ixgbe_construct_skb()
2284 static int ixgbe_clean_rx_irq(struct ixgbe_q_vector *q_vector, in ixgbe_clean_rx_irq() argument
2289 struct ixgbe_adapter *adapter = q_vector->adapter; in ixgbe_clean_rx_irq()
2415 ixgbe_rx_skb(q_vector, skb); in ixgbe_clean_rx_irq()
2438 q_vector->rx.total_packets += total_rx_packets; in ixgbe_clean_rx_irq()
2439 q_vector->rx.total_bytes += total_rx_bytes; in ixgbe_clean_rx_irq()
2453 struct ixgbe_q_vector *q_vector; in ixgbe_configure_msix() local
2469 q_vector = adapter->q_vector[v_idx]; in ixgbe_configure_msix()
2471 ixgbe_for_each_ring(ring, q_vector->rx) in ixgbe_configure_msix()
2474 ixgbe_for_each_ring(ring, q_vector->tx) in ixgbe_configure_msix()
2477 ixgbe_write_eitr(q_vector); in ixgbe_configure_msix()
2519 static void ixgbe_update_itr(struct ixgbe_q_vector *q_vector, in ixgbe_update_itr() argument
2552 itr = (q_vector->itr >> 2) + IXGBE_ITR_ADAPTIVE_MIN_INC; in ixgbe_update_itr()
2575 itr = (q_vector->itr >> 2) + IXGBE_ITR_ADAPTIVE_MIN_INC; in ixgbe_update_itr()
2585 itr = q_vector->itr >> 2; in ixgbe_update_itr()
2594 itr = q_vector->itr >> 3; in ixgbe_update_itr()
2664 switch (q_vector->adapter->link_speed) { in ixgbe_update_itr()
2702 void ixgbe_write_eitr(struct ixgbe_q_vector *q_vector) in ixgbe_write_eitr() argument
2704 struct ixgbe_adapter *adapter = q_vector->adapter; in ixgbe_write_eitr()
2706 int v_idx = q_vector->v_idx; in ixgbe_write_eitr()
2707 u32 itr_reg = q_vector->itr & IXGBE_MAX_EITR; in ixgbe_write_eitr()
2731 static void ixgbe_set_itr(struct ixgbe_q_vector *q_vector) in ixgbe_set_itr() argument
2735 ixgbe_update_itr(q_vector, &q_vector->tx); in ixgbe_set_itr()
2736 ixgbe_update_itr(q_vector, &q_vector->rx); in ixgbe_set_itr()
2739 new_itr = min(q_vector->rx.itr, q_vector->tx.itr); in ixgbe_set_itr()
2745 if (new_itr != q_vector->itr) { in ixgbe_set_itr()
2747 q_vector->itr = new_itr; in ixgbe_set_itr()
2749 ixgbe_write_eitr(q_vector); in ixgbe_set_itr()
3125 struct ixgbe_q_vector *q_vector = data; in ixgbe_msix_clean_rings() local
3129 if (q_vector->rx.ring || q_vector->tx.ring) in ixgbe_msix_clean_rings()
3130 napi_schedule_irqoff(&q_vector->napi); in ixgbe_msix_clean_rings()
3144 struct ixgbe_q_vector *q_vector = in ixgbe_poll() local
3146 struct ixgbe_adapter *adapter = q_vector->adapter; in ixgbe_poll()
3153 ixgbe_update_dca(q_vector); in ixgbe_poll()
3156 ixgbe_for_each_ring(ring, q_vector->tx) { in ixgbe_poll()
3158 ixgbe_clean_xdp_tx_irq(q_vector, ring, budget) : in ixgbe_poll()
3159 ixgbe_clean_tx_irq(q_vector, ring, budget); in ixgbe_poll()
3171 if (q_vector->rx.count > 1) in ixgbe_poll()
3172 per_ring_budget = max(budget/q_vector->rx.count, 1); in ixgbe_poll()
3176 ixgbe_for_each_ring(ring, q_vector->rx) { in ixgbe_poll()
3178 ixgbe_clean_rx_irq_zc(q_vector, ring, in ixgbe_poll()
3180 ixgbe_clean_rx_irq(q_vector, ring, in ixgbe_poll()
3195 ixgbe_set_itr(q_vector); in ixgbe_poll()
3198 BIT_ULL(q_vector->v_idx)); in ixgbe_poll()
3218 struct ixgbe_q_vector *q_vector = adapter->q_vector[vector]; in ixgbe_request_msix_irqs() local
3221 if (q_vector->tx.ring && q_vector->rx.ring) { in ixgbe_request_msix_irqs()
3222 snprintf(q_vector->name, sizeof(q_vector->name), in ixgbe_request_msix_irqs()
3225 } else if (q_vector->rx.ring) { in ixgbe_request_msix_irqs()
3226 snprintf(q_vector->name, sizeof(q_vector->name), in ixgbe_request_msix_irqs()
3228 } else if (q_vector->tx.ring) { in ixgbe_request_msix_irqs()
3229 snprintf(q_vector->name, sizeof(q_vector->name), in ixgbe_request_msix_irqs()
3236 q_vector->name, q_vector); in ixgbe_request_msix_irqs()
3246 &q_vector->affinity_mask); in ixgbe_request_msix_irqs()
3265 adapter->q_vector[vector]); in ixgbe_request_msix_irqs()
3283 struct ixgbe_q_vector *q_vector = adapter->q_vector[0]; in ixgbe_intr() local
3336 napi_schedule_irqoff(&q_vector->napi); in ixgbe_intr()
3388 struct ixgbe_q_vector *q_vector = adapter->q_vector[vector]; in ixgbe_free_irq() local
3392 if (!q_vector->rx.ring && !q_vector->tx.ring) in ixgbe_free_irq()
3398 free_irq(entry->vector, q_vector); in ixgbe_free_irq()
3446 struct ixgbe_q_vector *q_vector = adapter->q_vector[0]; in ixgbe_configure_msi_and_legacy() local
3448 ixgbe_write_eitr(q_vector); in ixgbe_configure_msi_and_legacy()
3499 if (!ring->q_vector || (ring->q_vector->itr < IXGBE_100K_ITR)) in ixgbe_configure_tx_ring()
3522 struct ixgbe_q_vector *q_vector = ring->q_vector; in ixgbe_configure_tx_ring() local
3524 if (q_vector) in ixgbe_configure_tx_ring()
3526 &q_vector->affinity_mask, in ixgbe_configure_tx_ring()
4986 napi_enable(&adapter->q_vector[q_idx]->napi); in ixgbe_napi_enable_all()
4994 napi_disable(&adapter->q_vector[q_idx]->napi); in ixgbe_napi_disable_all()
6461 if (tx_ring->q_vector) in ixgbe_setup_tx_resources()
6462 ring_node = tx_ring->q_vector->numa_node; in ixgbe_setup_tx_resources()
6540 struct ixgbe_q_vector *q_vector = rx_ring->q_vector; in ixgbe_rx_napi_id() local
6542 return q_vector ? q_vector->napi.napi_id : 0; in ixgbe_rx_napi_id()
6562 if (rx_ring->q_vector) in ixgbe_setup_rx_resources()
6563 ring_node = rx_ring->q_vector->numa_node; in ixgbe_setup_rx_resources()
7345 struct ixgbe_q_vector *qv = adapter->q_vector[i]; in ixgbe_check_hang_subtask()
8348 struct ixgbe_q_vector *q_vector = ring->q_vector; in ixgbe_atr() local
8363 if (!q_vector) in ixgbe_atr()
8385 struct ixgbe_adapter *adapter = q_vector->adapter; in ixgbe_atr()
8488 ixgbe_fdir_add_signature_filter_82599(&q_vector->adapter->hw, in ixgbe_atr()
10049 struct ixgbe_q_vector *qv = ring->q_vector; in ixgbe_fwd_del()
10399 napi_disable(&rx_ring->q_vector->napi); in ixgbe_txrx_ring_disable()
10429 napi_enable(&rx_ring->q_vector->napi); in ixgbe_txrx_ring_enable()