/linux/include/trace/events/ |
A D | napi.h | 3 #define TRACE_SYSTEM napi 16 TP_PROTO(struct napi_struct *napi, int work, int budget), 18 TP_ARGS(napi, work, budget), 21 __field( struct napi_struct *, napi) 22 __string( dev_name, napi->dev ? napi->dev->name : NO_DEV) 28 __entry->napi = napi; 29 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV); 35 __entry->napi, __get_str(dev_name),
|
/linux/net/core/ |
A D | gro_cells.c | 9 struct napi_struct napi; member 39 napi_schedule(&cell->napi); in gro_cells_receive() 50 static int gro_cell_poll(struct napi_struct *napi, int budget) in gro_cell_poll() argument 52 struct gro_cell *cell = container_of(napi, struct gro_cell, napi); in gro_cell_poll() 60 napi_gro_receive(napi, skb); in gro_cell_poll() 65 napi_complete_done(napi, work_done); in gro_cell_poll() 82 set_bit(NAPI_STATE_NO_BUSY_POLL, &cell->napi.state); in gro_cells_init() 84 netif_napi_add(dev, &cell->napi, gro_cell_poll, in gro_cells_init() 86 napi_enable(&cell->napi); in gro_cells_init() 101 napi_disable(&cell->napi); in gro_cells_destroy() [all …]
|
A D | dev.c | 940 return napi ? napi->dev : NULL; in dev_get_by_napi_id() 6232 ret = napi_skb_finish(napi, skb, dev_gro_receive(napi, skb)); in napi_gro_receive() 6265 napi->skb = skb; in napi_reuse_skb() 6275 napi->skb = skb; in napi_get_frags() 6321 napi->skb = NULL; in napi_frags_skb() 6359 ret = napi_frags_finish(napi, skb, dev_gro_receive(napi, skb)); in napi_gro_frags() 6636 return napi; in napi_by_id() 6695 rc = napi->poll(napi, budget); in busy_poll_stop() 6722 if (!napi) in napi_busy_loop() 6902 napi->skb = NULL; in netif_napi_add() [all …]
|
A D | netpoll.c | 140 static void poll_one_napi(struct napi_struct *napi) in poll_one_napi() argument 148 if (test_and_set_bit(NAPI_STATE_NPSVC, &napi->state)) in poll_one_napi() 154 work = napi->poll(napi, 0); in poll_one_napi() 156 trace_napi_poll(napi, work, 0); in poll_one_napi() 158 clear_bit(NAPI_STATE_NPSVC, &napi->state); in poll_one_napi() 163 struct napi_struct *napi; in poll_napi() local 167 if (cmpxchg(&napi->poll_owner, -1, cpu) == -1) { in poll_napi() 168 poll_one_napi(napi); in poll_napi() 169 smp_store_release(&napi->poll_owner, -1); in poll_napi() 299 struct napi_struct *napi; in netpoll_owner_active() local [all …]
|
/linux/drivers/net/ethernet/intel/igc/ |
A D | igc_xdp.c | 43 struct napi_struct *napi; in igc_xdp_enable_pool() local 73 napi = &rx_ring->q_vector->napi; in igc_xdp_enable_pool() 78 napi_disable(napi); in igc_xdp_enable_pool() 85 napi_enable(napi); in igc_xdp_enable_pool() 103 struct napi_struct *napi; in igc_xdp_disable_pool() local 119 napi = &rx_ring->q_vector->napi; in igc_xdp_disable_pool() 124 napi_disable(napi); in igc_xdp_disable_pool() 132 napi_enable(napi); in igc_xdp_disable_pool()
|
/linux/include/linux/ |
A D | netpoll.h | 69 static inline void *netpoll_poll_lock(struct napi_struct *napi) in netpoll_poll_lock() argument 71 struct net_device *dev = napi->dev; in netpoll_poll_lock() 76 while (cmpxchg(&napi->poll_owner, -1, owner) != -1) in netpoll_poll_lock() 79 return napi; in netpoll_poll_lock() 86 struct napi_struct *napi = have; in netpoll_poll_unlock() local 88 if (napi) in netpoll_poll_unlock() 89 smp_store_release(&napi->poll_owner, -1); in netpoll_poll_unlock() 98 static inline void *netpoll_poll_lock(struct napi_struct *napi) in netpoll_poll_lock() argument
|
/linux/drivers/net/ethernet/ |
A D | lantiq_xrx200.c | 61 struct napi_struct napi; member 134 napi_enable(&priv->chan_tx.napi); in xrx200_open() 138 napi_enable(&priv->chan_rx.napi); in xrx200_open() 161 napi_disable(&priv->chan_rx.napi); in xrx200_close() 164 napi_disable(&priv->chan_tx.napi); in xrx200_close() 235 struct xrx200_chan, napi); in xrx200_poll_rx() 263 struct xrx200_chan, napi); in xrx200_tx_housekeeping() 377 napi_disable(&ch_rx->napi); in xrx200_change_mtu() 398 napi_enable(&ch_rx->napi); in xrx200_change_mtu() 419 if (napi_schedule_prep(&ch->napi)) { in xrx200_dma_irq() [all …]
|
/linux/drivers/net/ethernet/synopsys/ |
A D | dwc-xlgmac-net.c | 365 struct napi_struct *napi; in xlgmac_tx_timer() local 367 napi = (pdata->per_channel_irq) ? &channel->napi : &pdata->napi; in xlgmac_tx_timer() 378 __napi_schedule(napi); in xlgmac_tx_timer() 425 napi_enable(&channel->napi); in xlgmac_napi_enable() 432 napi_enable(&pdata->napi); in xlgmac_napi_enable() 450 napi_disable(&pdata->napi); in xlgmac_napi_disable() 1119 struct napi_struct *napi; in xlgmac_rx_poll() local 1132 napi = (pdata->per_channel_irq) ? &channel->napi : &pdata->napi; in xlgmac_rx_poll() 1260 napi_gro_receive(napi, skb); in xlgmac_rx_poll() 1284 napi); in xlgmac_one_poll() [all …]
|
/linux/drivers/infiniband/hw/hfi1/ |
A D | ipoib_rx.c | 25 static struct sk_buff *prepare_frag_skb(struct napi_struct *napi, int size) in prepare_frag_skb() argument 36 return napi_alloc_skb(napi, size); in prepare_frag_skb() 52 struct napi_struct *napi = &rxq->napi; in hfi1_ipoib_prepare_skb() local 61 skb = napi_alloc_skb(napi, skb_size); in hfi1_ipoib_prepare_skb() 63 skb = prepare_frag_skb(napi, skb_size); in hfi1_ipoib_prepare_skb()
|
/linux/drivers/net/ethernet/aquantia/atlantic/ |
A D | aq_vec.c | 26 struct napi_struct napi; member 33 static int aq_vec_poll(struct napi_struct *napi, int budget) in aq_vec_poll() argument 35 struct aq_vec_s *self = container_of(napi, struct aq_vec_s, napi); in aq_vec_poll() 73 napi, in aq_vec_poll() 98 napi_complete_done(napi, work_done); in aq_vec_poll() 127 netif_napi_add(aq_nic_get_ndev(aq_nic), &self->napi, in aq_vec_alloc() 240 napi_enable(&self->napi); in aq_vec_start() 260 napi_disable(&self->napi); in aq_vec_stop() 285 netif_napi_del(&self->napi); in aq_vec_free() 321 napi_schedule(&self->napi); in aq_vec_isr() [all …]
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
A D | trap.c | 9 static int mlx5e_trap_napi_poll(struct napi_struct *napi, int budget) in mlx5e_trap_napi_poll() argument 11 struct mlx5e_trap *trap_ctx = container_of(napi, struct mlx5e_trap, napi); in mlx5e_trap_napi_poll() 26 if (unlikely(!napi_complete_done(napi, work_done))) in mlx5e_trap_napi_poll() 67 ccp.napi = &t->napi; in mlx5e_open_trap_rq() 143 netif_napi_add(netdev, &t->napi, mlx5e_trap_napi_poll, 64); in mlx5e_open_trap() 158 netif_napi_del(&t->napi); in mlx5e_open_trap() 167 netif_napi_del(&trap->napi); in mlx5e_close_trap() 173 napi_enable(&trap->napi); in mlx5e_activate_trap() 182 napi_disable(&trap->napi); in mlx5e_deactivate_trap()
|
/linux/drivers/net/ethernet/qlogic/qlcnic/ |
A D | qlcnic_io.c | 966 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_poll() 995 tx_ring = container_of(napi, struct qlcnic_host_tx_ring, napi); in qlcnic_tx_poll() 1017 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_rx_poll() 1654 napi_enable(&sds_ring->napi); in qlcnic_82xx_napi_enable() 1663 napi_enable(&tx_ring->napi); in qlcnic_82xx_napi_enable() 1958 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_83xx_msix_sriov_vf_poll() 1986 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_83xx_poll() 2012 tx_ring = container_of(napi, struct qlcnic_host_tx_ring, napi); in qlcnic_83xx_msix_tx_poll() 2033 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_83xx_rx_poll() 2057 napi_enable(&sds_ring->napi); in qlcnic_83xx_napi_enable() [all …]
|
/linux/drivers/net/can/dev/ |
A D | rx-offload.c | 42 static int can_rx_offload_napi_poll(struct napi_struct *napi, int quota) in can_rx_offload_napi_poll() argument 44 struct can_rx_offload *offload = container_of(napi, in can_rx_offload_napi_poll() 46 napi); in can_rx_offload_napi_poll() 63 napi_complete_done(napi, work_done); in can_rx_offload_napi_poll() 67 napi_reschedule(&offload->napi); in can_rx_offload_napi_poll() 298 napi_schedule(&offload->napi); in can_rx_offload_irq_finish() 320 napi_schedule(&offload->napi); in can_rx_offload_threaded_irq_finish() 337 netif_napi_add(dev, &offload->napi, can_rx_offload_napi_poll, weight); in can_rx_offload_init_queue() 389 napi_enable(&offload->napi); in can_rx_offload_enable() 395 netif_napi_del(&offload->napi); in can_rx_offload_del()
|
/linux/drivers/net/wan/ |
A D | lapbether.c | 58 struct napi_struct napi; member 88 static int lapbeth_napi_poll(struct napi_struct *napi, int budget) in lapbeth_napi_poll() argument 90 struct lapbethdev *lapbeth = container_of(napi, struct lapbethdev, in lapbeth_napi_poll() 91 napi); in lapbeth_napi_poll() 103 napi_complete(napi); in lapbeth_napi_poll() 178 napi_schedule(&lapbeth->napi); in lapbeth_data_indication() 277 napi_schedule(&lapbeth->napi); in lapbeth_connected() 295 napi_schedule(&lapbeth->napi); in lapbeth_disconnected() 324 napi_enable(&lapbeth->napi); in lapbeth_open() 352 napi_disable(&lapbeth->napi); in lapbeth_close() [all …]
|
/linux/drivers/net/wireless/intel/iwlwifi/ |
A D | iwl-op-mode.h | 95 void (*rx)(struct iwl_op_mode *op_mode, struct napi_struct *napi, 97 void (*rx_rss)(struct iwl_op_mode *op_mode, struct napi_struct *napi, 136 struct napi_struct *napi, in iwl_op_mode_rx() argument 139 return op_mode->ops->rx(op_mode, napi, rxb); in iwl_op_mode_rx() 143 struct napi_struct *napi, in iwl_op_mode_rx_rss() argument 147 op_mode->ops->rx_rss(op_mode, napi, rxb, queue); in iwl_op_mode_rx_rss()
|
/linux/drivers/net/ethernet/broadcom/ |
A D | bcm4908_enet.c | 57 struct napi_struct napi; member 433 napi_schedule(&ring->napi); in bcm4908_enet_irq_handler() 473 napi_enable(&tx_ring->napi); in bcm4908_enet_open() 479 napi_enable(&rx_ring->napi); in bcm4908_enet_open() 496 napi_disable(&rx_ring->napi); in bcm4908_enet_stop() 497 napi_disable(&tx_ring->napi); in bcm4908_enet_stop() 523 napi_schedule(&enet->tx_ring.napi); in bcm4908_enet_start_xmit() 572 struct bcm4908_enet_dma_ring *rx_ring = container_of(napi, struct bcm4908_enet_dma_ring, napi); in bcm4908_enet_poll_rx() 621 napi_complete_done(napi, handled); in bcm4908_enet_poll_rx() 633 struct bcm4908_enet_dma_ring *tx_ring = container_of(napi, struct bcm4908_enet_dma_ring, napi); in bcm4908_enet_poll_tx() [all …]
|
/linux/drivers/net/ethernet/google/gve/ |
A D | gve_rx.c | 308 ctx->skb_head = napi_get_frags(napi); in gve_rx_add_frags() 347 struct napi_struct *napi, in gve_rx_raw_addressing() argument 368 u16 len, struct napi_struct *napi, in gve_rx_qpl() argument 520 page_info, len, napi, in gve_rx_skb() 546 struct napi_struct *napi; in gve_rx() local 556 napi = &priv->ntfy_blocks[rx->ntfy_id].napi; in gve_rx() 612 napi_gro_frags(napi); in gve_rx() 614 napi_gro_receive(napi, skb); in gve_rx() 620 if (napi->skb) in gve_rx() 621 napi_free_frags(napi); in gve_rx() [all …]
|
/linux/drivers/staging/octeon/ |
A D | ethernet-rx.c | 37 struct napi_struct napi; member 412 static int cvm_oct_napi_poll(struct napi_struct *napi, int budget) in cvm_oct_napi_poll() argument 414 struct oct_rx_group *rx_group = container_of(napi, struct oct_rx_group, in cvm_oct_napi_poll() 415 napi); in cvm_oct_napi_poll() 422 napi_complete_done(napi, rx_count); in cvm_oct_napi_poll() 472 netif_napi_add(dev_for_napi, &oct_rx_group[i].napi, in cvm_oct_rx_initialize() 474 napi_enable(&oct_rx_group[i].napi); in cvm_oct_rx_initialize() 481 "Ethernet", &oct_rx_group[i].napi); in cvm_oct_rx_initialize() 518 napi_schedule(&oct_rx_group[i].napi); in cvm_oct_rx_initialize() 540 netif_napi_del(&oct_rx_group[i].napi); in cvm_oct_rx_shutdown()
|
/linux/drivers/net/wireless/ath/wil6210/ |
A D | netdev.c | 91 static int wil6210_netdev_poll_rx(struct napi_struct *napi, int budget) in wil6210_netdev_poll_rx() argument 93 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_rx() 102 napi_complete_done(napi, done); in wil6210_netdev_poll_rx() 112 static int wil6210_netdev_poll_rx_edma(struct napi_struct *napi, int budget) in wil6210_netdev_poll_rx_edma() argument 114 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_rx_edma() 123 napi_complete_done(napi, done); in wil6210_netdev_poll_rx_edma() 133 static int wil6210_netdev_poll_tx(struct napi_struct *napi, int budget) in wil6210_netdev_poll_tx() argument 135 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_tx() 160 napi_complete(napi); in wil6210_netdev_poll_tx() 172 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_tx_edma() [all …]
|
/linux/drivers/net/ |
A D | virtio_net.c | 137 struct napi_struct napi; member 145 struct napi_struct napi; member 350 struct napi_struct *napi = &vi->sq[vq2txq(vq)].napi; in skb_xmit_done() local 355 if (napi->weight) in skb_xmit_done() 1370 napi_enable(napi); in virtnet_napi_enable() 1385 if (!napi->weight) in virtnet_napi_tx_enable() 1392 napi->weight = 0; in virtnet_napi_tx_enable() 1401 if (napi->weight) in virtnet_napi_tx_disable() 1402 napi_disable(napi); in virtnet_napi_tx_disable() 1542 container_of(napi, struct receive_queue, napi); in virtnet_poll() [all …]
|
/linux/drivers/net/wireless/ath/ath11k/ |
A D | dp_rx.h | 69 struct napi_struct *napi, int budget); 70 int ath11k_dp_process_rx_err(struct ath11k_base *ab, struct napi_struct *napi, 73 struct napi_struct *napi, 84 struct napi_struct *napi, int budget); 86 struct napi_struct *napi, int budget);
|
/linux/drivers/net/wireless/mediatek/mt76/mt7615/ |
A D | dma.c | 69 static int mt7615_poll_tx(struct napi_struct *napi, int budget) in mt7615_poll_tx() argument 73 dev = container_of(napi, struct mt7615_dev, mt76.tx_napi); in mt7615_poll_tx() 75 napi_complete(napi); in mt7615_poll_tx() 81 if (napi_complete(napi)) in mt7615_poll_tx() 89 static int mt7615_poll_rx(struct napi_struct *napi, int budget) in mt7615_poll_rx() argument 94 dev = container_of(napi->dev, struct mt7615_dev, mt76.napi_dev); in mt7615_poll_rx() 97 napi_complete(napi); in mt7615_poll_rx() 101 done = mt76_dma_rx_poll(napi, budget); in mt7615_poll_rx()
|
/linux/drivers/net/caif/ |
A D | caif_virtio.c | 111 struct napi_struct napi; member 252 struct cfv_info *cfv = container_of(napi, struct cfv_info, napi); in cfv_rx_poll() 319 napi_complete(napi); in cfv_rx_poll() 321 napi_schedule_prep(napi)) { in cfv_rx_poll() 323 __napi_schedule(napi); in cfv_rx_poll() 331 napi_complete(napi); in cfv_rx_poll() 339 napi_complete(napi); in cfv_rx_poll() 356 napi_schedule(&cfv->napi); in cfv_recv() 446 napi_enable(&cfv->napi); in cfv_netdev_open() 449 napi_schedule(&cfv->napi); in cfv_netdev_open() [all …]
|
/linux/drivers/net/ethernet/ezchip/ |
A D | nps_enet.c | 174 static int nps_enet_poll(struct napi_struct *napi, int budget) in nps_enet_poll() argument 176 struct net_device *ndev = napi->dev; in nps_enet_poll() 182 if ((work_done < budget) && napi_complete_done(napi, work_done)) { in nps_enet_poll() 202 napi_reschedule(napi); in nps_enet_poll() 228 if (likely(napi_schedule_prep(&priv->napi))) { in nps_enet_irq_handler() 230 __napi_schedule(&priv->napi); in nps_enet_irq_handler() 493 napi_enable(&priv->napi); in nps_enet_open() 514 napi_disable(&priv->napi); in nps_enet_stop() 616 netif_napi_add(ndev, &priv->napi, nps_enet_poll, in nps_enet_probe() 631 netif_napi_del(&priv->napi); in nps_enet_probe() [all …]
|
/linux/drivers/net/ethernet/pensando/ionic/ |
A D | ionic_txrx.h | 12 int ionic_rx_napi(struct napi_struct *napi, int budget); 13 int ionic_tx_napi(struct napi_struct *napi, int budget); 14 int ionic_txrx_napi(struct napi_struct *napi, int budget);
|