/Linux-v4.19/include/trace/events/ |
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-v4.19/net/core/ |
D | gro_cells.c | 9 struct napi_struct napi; member 30 napi_schedule(&cell->napi); in gro_cells_receive() 36 static int gro_cell_poll(struct napi_struct *napi, int budget) in gro_cell_poll() argument 38 struct gro_cell *cell = container_of(napi, struct gro_cell, napi); in gro_cell_poll() 46 napi_gro_receive(napi, skb); in gro_cell_poll() 51 napi_complete_done(napi, work_done); in gro_cell_poll() 68 set_bit(NAPI_STATE_NO_BUSY_POLL, &cell->napi.state); in gro_cells_init() 70 netif_napi_add(dev, &cell->napi, gro_cell_poll, in gro_cells_init() 72 napi_enable(&cell->napi); in gro_cells_init() 87 netif_napi_del(&cell->napi); in gro_cells_destroy()
|
D | netpoll.c | 138 static void poll_one_napi(struct napi_struct *napi) in poll_one_napi() argument 146 if (test_and_set_bit(NAPI_STATE_NPSVC, &napi->state)) in poll_one_napi() 152 work = napi->poll(napi, 0); in poll_one_napi() 153 WARN_ONCE(work, "%pF exceeded budget in poll\n", napi->poll); in poll_one_napi() 154 trace_napi_poll(napi, work, 0); in poll_one_napi() 156 clear_bit(NAPI_STATE_NPSVC, &napi->state); in poll_one_napi() 161 struct napi_struct *napi; in poll_napi() local 164 list_for_each_entry(napi, &dev->napi_list, dev_list) { in poll_napi() 165 if (cmpxchg(&napi->poll_owner, -1, cpu) == -1) { in poll_napi() 166 poll_one_napi(napi); in poll_napi() [all …]
|
D | dev.c | 883 struct napi_struct *napi; in dev_get_by_napi_id() local 890 napi = napi_by_id(napi_id); in dev_get_by_napi_id() 892 return napi ? napi->dev : NULL; in dev_get_by_napi_id() 3924 struct napi_struct *napi) in ____napi_schedule() argument 3926 list_add_tail(&napi->poll_list, &sd->poll_list); in ____napi_schedule() 5308 static void __napi_gro_flush_chain(struct napi_struct *napi, u32 index, in __napi_gro_flush_chain() argument 5311 struct list_head *head = &napi->gro_hash[index].list; in __napi_gro_flush_chain() 5320 napi->gro_hash[index].count--; in __napi_gro_flush_chain() 5323 if (!napi->gro_hash[index].count) in __napi_gro_flush_chain() 5324 __clear_bit(index, &napi->gro_bitmask); in __napi_gro_flush_chain() [all …]
|
/Linux-v4.19/include/linux/ |
D | netpoll.h | 79 static inline void *netpoll_poll_lock(struct napi_struct *napi) in netpoll_poll_lock() argument 81 struct net_device *dev = napi->dev; in netpoll_poll_lock() 86 while (cmpxchg(&napi->poll_owner, -1, owner) != -1) in netpoll_poll_lock() 89 return napi; in netpoll_poll_lock() 96 struct napi_struct *napi = have; in netpoll_poll_unlock() local 98 if (napi) in netpoll_poll_unlock() 99 smp_store_release(&napi->poll_owner, -1); in netpoll_poll_unlock() 108 static inline void *netpoll_poll_lock(struct napi_struct *napi) in netpoll_poll_lock() argument
|
/Linux-v4.19/drivers/net/ethernet/synopsys/ |
D | dwc-xlgmac-net.c | 290 if (napi_schedule_prep(&pdata->napi)) { in xlgmac_isr() 296 __napi_schedule_irqoff(&pdata->napi); in xlgmac_isr() 350 if (napi_schedule_prep(&channel->napi)) { in xlgmac_dma_isr() 355 __napi_schedule_irqoff(&channel->napi); in xlgmac_dma_isr() 365 struct napi_struct *napi; in xlgmac_tx_timer() local 367 napi = (pdata->per_channel_irq) ? &channel->napi : &pdata->napi; in xlgmac_tx_timer() 369 if (napi_schedule_prep(napi)) { in xlgmac_tx_timer() 378 __napi_schedule(napi); in xlgmac_tx_timer() 421 netif_napi_add(pdata->netdev, &channel->napi, in xlgmac_napi_enable() 425 napi_enable(&channel->napi); in xlgmac_napi_enable() [all …]
|
/Linux-v4.19/drivers/net/wireless/intel/iwlwifi/ |
D | iwl-op-mode.h | 156 void (*rx)(struct iwl_op_mode *op_mode, struct napi_struct *napi, 158 void (*rx_rss)(struct iwl_op_mode *op_mode, struct napi_struct *napi, 196 struct napi_struct *napi, in iwl_op_mode_rx() argument 199 return op_mode->ops->rx(op_mode, napi, rxb); in iwl_op_mode_rx() 203 struct napi_struct *napi, in iwl_op_mode_rx_rss() argument 207 op_mode->ops->rx_rss(op_mode, napi, rxb, queue); in iwl_op_mode_rx_rss()
|
/Linux-v4.19/drivers/net/ethernet/aquantia/atlantic/ |
D | aq_vec.c | 28 struct napi_struct napi; member 35 static int aq_vec_poll(struct napi_struct *napi, int budget) in aq_vec_poll() argument 37 struct aq_vec_s *self = container_of(napi, struct aq_vec_s, napi); in aq_vec_poll() 72 napi, in aq_vec_poll() 96 napi_complete_done(napi, work_done); in aq_vec_poll() 130 netif_napi_add(aq_nic_get_ndev(aq_nic), &self->napi, in aq_vec_alloc() 232 napi_enable(&self->napi); in aq_vec_start() 252 napi_disable(&self->napi); in aq_vec_stop() 285 netif_napi_del(&self->napi); in aq_vec_free() 301 napi_schedule(&self->napi); in aq_vec_isr() [all …]
|
/Linux-v4.19/drivers/net/can/ |
D | rx-offload.c | 48 static int can_rx_offload_napi_poll(struct napi_struct *napi, int quota) in can_rx_offload_napi_poll() argument 50 struct can_rx_offload *offload = container_of(napi, struct can_rx_offload, napi); in can_rx_offload_napi_poll() 67 napi_complete_done(napi, work_done); in can_rx_offload_napi_poll() 71 napi_reschedule(&offload->napi); in can_rx_offload_napi_poll() 235 netif_napi_add(dev, &offload->napi, can_rx_offload_napi_poll, weight); in can_rx_offload_init_queue() 275 napi_enable(&offload->napi); in can_rx_offload_enable() 281 netif_napi_del(&offload->napi); in can_rx_offload_del()
|
/Linux-v4.19/drivers/net/ethernet/qlogic/qlcnic/ |
D | qlcnic_io.c | 958 static int qlcnic_poll(struct napi_struct *napi, int budget) in qlcnic_poll() argument 965 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_poll() 978 napi_complete_done(&sds_ring->napi, work_done); in qlcnic_poll() 988 static int qlcnic_tx_poll(struct napi_struct *napi, int budget) in qlcnic_tx_poll() argument 994 tx_ring = container_of(napi, struct qlcnic_host_tx_ring, napi); in qlcnic_tx_poll() 999 napi_complete(&tx_ring->napi); in qlcnic_tx_poll() 1010 static int qlcnic_rx_poll(struct napi_struct *napi, int budget) in qlcnic_rx_poll() argument 1016 sds_ring = container_of(napi, struct qlcnic_host_sds_ring, napi); in qlcnic_rx_poll() 1022 napi_complete_done(&sds_ring->napi, work_done); in qlcnic_rx_poll() 1247 napi_gro_receive(&sds_ring->napi, skb); in qlcnic_process_rcv() [all …]
|
/Linux-v4.19/drivers/net/ethernet/mellanox/mlx5/core/ |
D | en_txrx.c | 74 int mlx5e_napi_poll(struct napi_struct *napi, int budget) in mlx5e_napi_poll() argument 76 struct mlx5e_channel *c = container_of(napi, struct mlx5e_channel, in mlx5e_napi_poll() 77 napi); in mlx5e_napi_poll() 108 if (unlikely(!napi_complete_done(napi, work_done))) in mlx5e_napi_poll() 131 napi_schedule(cq->napi); in mlx5e_completion_event()
|
/Linux-v4.19/drivers/staging/octeon/ |
D | ethernet-rx.c | 48 struct napi_struct napi; member 419 static int cvm_oct_napi_poll(struct napi_struct *napi, int budget) in cvm_oct_napi_poll() argument 421 struct oct_rx_group *rx_group = container_of(napi, struct oct_rx_group, in cvm_oct_napi_poll() 422 napi); in cvm_oct_napi_poll() 429 napi_complete_done(napi, rx_count); in cvm_oct_napi_poll() 479 netif_napi_add(dev_for_napi, &oct_rx_group[i].napi, in cvm_oct_rx_initialize() 481 napi_enable(&oct_rx_group[i].napi); in cvm_oct_rx_initialize() 488 "Ethernet", &oct_rx_group[i].napi); in cvm_oct_rx_initialize() 525 napi_schedule(&oct_rx_group[i].napi); in cvm_oct_rx_initialize() 547 netif_napi_del(&oct_rx_group[i].napi); in cvm_oct_rx_shutdown()
|
/Linux-v4.19/drivers/net/wireless/ath/wil6210/ |
D | netdev.c | 102 static int wil6210_netdev_poll_rx(struct napi_struct *napi, int budget) in wil6210_netdev_poll_rx() argument 104 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_rx() 113 napi_complete_done(napi, done); in wil6210_netdev_poll_rx() 123 static int wil6210_netdev_poll_rx_edma(struct napi_struct *napi, int budget) in wil6210_netdev_poll_rx_edma() argument 125 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_rx_edma() 134 napi_complete_done(napi, done); in wil6210_netdev_poll_rx_edma() 144 static int wil6210_netdev_poll_tx(struct napi_struct *napi, int budget) in wil6210_netdev_poll_tx() argument 146 struct wil6210_priv *wil = container_of(napi, struct wil6210_priv, in wil6210_netdev_poll_tx() 171 napi_complete(napi); in wil6210_netdev_poll_tx() 181 static int wil6210_netdev_poll_tx_edma(struct napi_struct *napi, int budget) in wil6210_netdev_poll_tx_edma() argument [all …]
|
/Linux-v4.19/include/linux/can/ |
D | rx-offload.h | 35 struct napi_struct napi; member 51 napi_schedule(&offload->napi); in can_rx_offload_schedule() 56 napi_disable(&offload->napi); in can_rx_offload_disable()
|
/Linux-v4.19/drivers/net/ethernet/huawei/hinic/ |
D | hinic_rx.c | 349 napi_gro_receive(&rxq->napi, skb); in rxq_recv() 366 static int rx_poll(struct napi_struct *napi, int budget) in rx_poll() argument 368 struct hinic_rxq *rxq = container_of(napi, struct hinic_rxq, napi); in rx_poll() 376 napi_complete(napi); in rx_poll() 385 netif_napi_add(rxq->netdev, &rxq->napi, rx_poll, nic_dev->rx_weight); in rx_add_napi() 386 napi_enable(&rxq->napi); in rx_add_napi() 391 napi_disable(&rxq->napi); in rx_del_napi() 392 netif_napi_del(&rxq->napi); in rx_del_napi() 407 napi_schedule(&rxq->napi); in rx_irq()
|
D | hinic_tx.c | 308 static int free_tx_poll(struct napi_struct *napi, int budget) in free_tx_poll() argument 310 struct hinic_txq *txq = container_of(napi, struct hinic_txq, napi); in free_tx_poll() 374 napi_complete(napi); in free_tx_poll() 384 netif_napi_add(txq->netdev, &txq->napi, free_tx_poll, weight); in tx_napi_add() 385 napi_enable(&txq->napi); in tx_napi_add() 390 napi_disable(&txq->napi); in tx_napi_del() 391 netif_napi_del(&txq->napi); in tx_napi_del() 406 napi_schedule(&txq->napi); in tx_irq()
|
/Linux-v4.19/drivers/net/ethernet/mellanox/mlx4/ |
D | en_cq.c | 155 netif_tx_napi_add(cq->dev, &cq->napi, mlx4_en_poll_tx_cq, in mlx4_en_activate_cq() 157 napi_enable(&cq->napi); in mlx4_en_activate_cq() 161 netif_napi_add(cq->dev, &cq->napi, mlx4_en_poll_rx_cq, 64); in mlx4_en_activate_cq() 162 napi_enable(&cq->napi); in mlx4_en_activate_cq() 198 napi_disable(&cq->napi); in mlx4_en_deactivate_cq() 199 netif_napi_del(&cq->napi); in mlx4_en_deactivate_cq()
|
/Linux-v4.19/drivers/net/ethernet/ |
D | lantiq_etop.c | 93 struct napi_struct napi; member 155 ltq_etop_poll_rx(struct napi_struct *napi, int budget) in ltq_etop_poll_rx() argument 157 struct ltq_etop_chan *ch = container_of(napi, in ltq_etop_poll_rx() 158 struct ltq_etop_chan, napi); in ltq_etop_poll_rx() 170 napi_complete_done(&ch->napi, work_done); in ltq_etop_poll_rx() 177 ltq_etop_poll_tx(struct napi_struct *napi, int budget) in ltq_etop_poll_tx() argument 180 container_of(napi, struct ltq_etop_chan, napi); in ltq_etop_poll_tx() 200 napi_complete(&ch->napi); in ltq_etop_poll_tx() 211 napi_schedule(&priv->ch[ch].napi); in ltq_etop_dma_irq() 442 napi_enable(&ch->napi); in ltq_etop_open() [all …]
|
/Linux-v4.19/drivers/net/caif/ |
D | caif_virtio.c | 111 struct napi_struct napi; member 250 static int cfv_rx_poll(struct napi_struct *napi, int quota) in cfv_rx_poll() argument 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() [all …]
|
/Linux-v4.19/drivers/net/ |
D | virtio_net.c | 140 struct napi_struct napi; member 148 struct napi_struct napi; member 308 static void virtqueue_napi_schedule(struct napi_struct *napi, in virtqueue_napi_schedule() argument 311 if (napi_schedule_prep(napi)) { in virtqueue_napi_schedule() 313 __napi_schedule(napi); in virtqueue_napi_schedule() 317 static void virtqueue_napi_complete(struct napi_struct *napi, in virtqueue_napi_complete() argument 323 if (napi_complete_done(napi, processed)) { in virtqueue_napi_complete() 325 virtqueue_napi_schedule(napi, vq); in virtqueue_napi_complete() 334 struct napi_struct *napi = &vi->sq[vq2txq(vq)].napi; in skb_xmit_done() local 339 if (napi->weight) in skb_xmit_done() [all …]
|
/Linux-v4.19/drivers/net/ethernet/ezchip/ |
D | nps_enet.c | 185 static int nps_enet_poll(struct napi_struct *napi, int budget) in nps_enet_poll() argument 187 struct net_device *ndev = napi->dev; in nps_enet_poll() 193 if ((work_done < budget) && napi_complete_done(napi, work_done)) { in nps_enet_poll() 213 napi_reschedule(napi); in nps_enet_poll() 239 if (likely(napi_schedule_prep(&priv->napi))) { in nps_enet_irq_handler() 241 __napi_schedule(&priv->napi); in nps_enet_irq_handler() 504 napi_enable(&priv->napi); in nps_enet_open() 525 napi_disable(&priv->napi); in nps_enet_stop() 632 netif_napi_add(ndev, &priv->napi, nps_enet_poll, in nps_enet_probe() 647 netif_napi_del(&priv->napi); in nps_enet_probe() [all …]
|
/Linux-v4.19/drivers/net/wireless/mediatek/mt76/ |
D | dma.c | 317 mt76_dma_rx_fill(struct mt76_dev *dev, struct mt76_queue *q, bool napi) in mt76_dma_rx_fill() argument 327 if (napi) in mt76_dma_rx_fill() 465 mt76_dma_rx_poll(struct napi_struct *napi, int budget) in mt76_dma_rx_poll() argument 470 dev = container_of(napi->dev, struct mt76_dev, napi_dev); in mt76_dma_rx_poll() 471 qid = napi - dev->napi; in mt76_dma_rx_poll() 477 mt76_rx_poll_complete(dev, qid, napi); in mt76_dma_rx_poll() 484 napi_complete(napi); in mt76_dma_rx_poll() 499 netif_napi_add(&dev->napi_dev, &dev->napi[i], mt76_dma_rx_poll, in mt76_dma_init() 503 napi_enable(&dev->napi[i]); in mt76_dma_init() 534 netif_napi_del(&dev->napi[i]); in mt76_dma_cleanup()
|
/Linux-v4.19/drivers/net/ethernet/ibm/emac/ |
D | mal.c | 56 napi_enable(&mal->napi); in mal_register_commac() 80 napi_disable(&mal->napi); in mal_unregister_commac() 265 if (likely(napi_schedule_prep(&mal->napi))) { in mal_schedule_poll() 270 __napi_schedule(&mal->napi); in mal_schedule_poll() 381 napi_synchronize(&mal->napi); in mal_poll_disable() 394 napi_schedule(&mal->napi); in mal_poll_enable() 397 static int mal_poll(struct napi_struct *napi, int budget) in mal_poll() argument 399 struct mal_instance *mal = container_of(napi, struct mal_instance, napi); in mal_poll() 432 if (napi_complete_done(napi, received)) { in mal_poll() 448 if (!napi_reschedule(napi)) in mal_poll() [all …]
|
/Linux-v4.19/drivers/net/ethernet/moxa/ |
D | moxart_ether.c | 176 napi_enable(&priv->napi); in moxart_mac_open() 195 napi_disable(&priv->napi); in moxart_mac_stop() 208 static int moxart_rx_poll(struct napi_struct *napi, int budget) in moxart_rx_poll() argument 210 struct moxart_mac_priv_t *priv = container_of(napi, in moxart_rx_poll() 212 napi); in moxart_rx_poll() 256 napi_gro_receive(&priv->napi, skb); in moxart_rx_poll() 273 napi_complete_done(napi, rx); in moxart_rx_poll() 322 if (napi_schedule_prep(&priv->napi)) { in moxart_mac_interrupt() 325 __napi_schedule(&priv->napi); in moxart_mac_interrupt() 534 netif_napi_add(ndev, &priv->napi, moxart_rx_poll, RX_DESC_NUM); in moxart_mac_probe()
|
/Linux-v4.19/drivers/net/ethernet/wiznet/ |
D | w5300.c | 97 struct napi_struct napi; member 386 static int w5300_napi_poll(struct napi_struct *napi, int budget) in w5300_napi_poll() argument 388 struct w5300_priv *priv = container_of(napi, struct w5300_priv, napi); in w5300_napi_poll() 420 napi_complete_done(napi, rx_count); in w5300_napi_poll() 445 if (napi_schedule_prep(&priv->napi)) { in w5300_interrupt() 448 __napi_schedule(&priv->napi); in w5300_interrupt() 502 napi_enable(&priv->napi); in w5300_open() 518 napi_disable(&priv->napi); in w5300_stop() 622 netif_napi_add(ndev, &priv->napi, w5300_napi_poll, 16); in w5300_probe()
|