/Linux-v6.1/Documentation/networking/ |
D | skbuff.rst | 15 Shared skbs and skb clones 19 to keep a struct sk_buff alive. skbs with a ``sk_buff.users != 1`` are referred 20 to as shared skbs (see skb_shared()). 22 skb_clone() allows for fast duplication of skbs. None of the data buffers 24 &skb_shared_info.refcount indicates the number of skbs pointing at the same 27 dataref and headerless skbs 31 :doc: dataref and headerless skbs
|
D | netdev-features.rst | 129 ndo_start_xmit can handle skbs with frags in high memory. 133 Those features say that ndo_start_xmit can handle fragmented skbs: 134 NETIF_F_SG --- paged skbs (skb_shinfo()->frags), NETIF_F_FRAGLIST --- 135 chained skbs (skb->next/prev list).
|
D | segmentation-offloads.rst | 60 UFO is deprecated: modern kernels will no longer generate UFO skbs, but can 165 padded and stored as chained skbs, and skb_segment() splits based on those. 181 will check for GSO_BY_FRAGS and WARN if asked to manipulate these skbs.
|
/Linux-v6.1/drivers/net/ethernet/actions/ |
D | owl-emac.c | 206 ring->skbs[i] = skb; in owl_emac_ring_prepare_rx() 252 owl_emac_dma_unmap_rx(priv, ring->skbs[i], ring->skbs_dma[i]); in owl_emac_ring_unprepare_rx() 255 dev_kfree_skb(ring->skbs[i]); in owl_emac_ring_unprepare_rx() 256 ring->skbs[i] = NULL; in owl_emac_ring_unprepare_rx() 271 owl_emac_dma_unmap_tx(priv, ring->skbs[i], ring->skbs_dma[i]); in owl_emac_ring_unprepare_tx() 274 dev_kfree_skb(ring->skbs[i]); in owl_emac_ring_unprepare_tx() 275 ring->skbs[i] = NULL; in owl_emac_ring_unprepare_tx() 288 ring->skbs = devm_kcalloc(dev, size, sizeof(struct sk_buff *), in owl_emac_ring_alloc() 290 if (!ring->skbs) in owl_emac_ring_alloc() 530 ring->skbs[tx_head] = skb; in owl_emac_setup_frame_xmit() [all …]
|
D | owl-emac.h | 247 struct sk_buff **skbs; member
|
/Linux-v6.1/drivers/net/ethernet/sfc/ |
D | selftest.c | 83 struct sk_buff **skbs; member 424 state->skbs[i] = skb; in efx_begin_loopback() 478 skb = state->skbs[i]; in efx_end_loopback() 534 state->skbs = kcalloc(state->packet_count, in efx_test_loopback() 535 sizeof(state->skbs[0]), GFP_KERNEL); in efx_test_loopback() 536 if (!state->skbs) in efx_test_loopback() 557 kfree(state->skbs); in efx_test_loopback()
|
/Linux-v6.1/drivers/net/ethernet/sfc/siena/ |
D | selftest.c | 83 struct sk_buff **skbs; member 424 state->skbs[i] = skb; in efx_begin_loopback() 478 skb = state->skbs[i]; in efx_end_loopback() 534 state->skbs = kcalloc(state->packet_count, in efx_test_loopback() 535 sizeof(state->skbs[0]), GFP_KERNEL); in efx_test_loopback() 536 if (!state->skbs) in efx_test_loopback() 557 kfree(state->skbs); in efx_test_loopback()
|
/Linux-v6.1/drivers/net/ethernet/sfc/falcon/ |
D | selftest.c | 80 struct sk_buff **skbs; member 426 state->skbs[i] = skb; in ef4_begin_loopback() 480 skb = state->skbs[i]; in ef4_end_loopback() 536 state->skbs = kcalloc(state->packet_count, in ef4_test_loopback() 537 sizeof(state->skbs[0]), GFP_KERNEL); in ef4_test_loopback() 538 if (!state->skbs) in ef4_test_loopback() 559 kfree(state->skbs); in ef4_test_loopback()
|
/Linux-v6.1/drivers/net/ethernet/socionext/ |
D | sni_ave.c | 226 struct sk_buff *skbs; member 585 skb = priv->rx.desc[entry].skbs; in ave_rxdesc_prepare() 618 priv->rx.desc[entry].skbs = skb; in ave_rxdesc_prepare() 715 if (priv->tx.desc[done_idx].skbs) { in ave_tx_complete() 718 dev_consume_skb_any(priv->tx.desc[done_idx].skbs); in ave_tx_complete() 719 priv->tx.desc[done_idx].skbs = NULL; in ave_tx_complete() 776 skb = priv->rx.desc[proc_idx].skbs; in ave_rx_receive() 777 priv->rx.desc[proc_idx].skbs = NULL; in ave_rx_receive() 1371 if (!priv->tx.desc[entry].skbs) in ave_stop() 1375 dev_kfree_skb_any(priv->tx.desc[entry].skbs); in ave_stop() [all …]
|
/Linux-v6.1/drivers/net/wireless/mediatek/mt7601u/ |
D | dma.c | 282 struct sk_buff_head skbs; in mt7601u_tx_tasklet() local 285 __skb_queue_head_init(&skbs); in mt7601u_tx_tasklet() 294 skb_queue_splice_init(&dev->tx_skb_done, &skbs); in mt7601u_tx_tasklet() 298 while (!skb_queue_empty(&skbs)) { in mt7601u_tx_tasklet() 299 struct sk_buff *skb = __skb_dequeue(&skbs); in mt7601u_tx_tasklet()
|
/Linux-v6.1/net/mac80211/ |
D | tx.c | 935 __skb_queue_tail(&tx->skbs, tmp); in ieee80211_fragment() 977 __skb_queue_tail(&tx->skbs, skb); in ieee80211_tx_h_fragment() 1014 skb_queue_walk(&tx->skbs, skb) { in ieee80211_tx_h_fragment() 1020 if (!skb_queue_is_last(&tx->skbs, skb)) { in ieee80211_tx_h_fragment() 1050 skb_queue_walk(&tx->skbs, skb) { in ieee80211_tx_h_stats() 1101 skb_queue_walk(&tx->skbs, skb) { in ieee80211_tx_h_calculate_duration() 1105 if (!skb_queue_is_last(&tx->skbs, skb)) { in ieee80211_tx_h_calculate_duration() 1106 struct sk_buff *next = skb_queue_next(&tx->skbs, skb); in ieee80211_tx_h_calculate_duration() 1237 __skb_queue_head_init(&tx->skbs); in ieee80211_tx_prepare() 1695 struct sk_buff_head *skbs, in ieee80211_tx_frags() argument [all …]
|
D | wpa.c | 255 skb_queue_walk(&tx->skbs, skb) { in ieee80211_crypto_tkip_encrypt() 496 skb_queue_walk(&tx->skbs, skb) { in ieee80211_crypto_ccmp_encrypt() 695 skb_queue_walk(&tx->skbs, skb) { in ieee80211_crypto_gcmp_encrypt() 830 if (WARN_ON(skb_queue_len(&tx->skbs) != 1)) in ieee80211_crypto_aes_cmac_encrypt() 833 skb = skb_peek(&tx->skbs); in ieee80211_crypto_aes_cmac_encrypt() 878 if (WARN_ON(skb_queue_len(&tx->skbs) != 1)) in ieee80211_crypto_aes_cmac_256_encrypt() 881 skb = skb_peek(&tx->skbs); in ieee80211_crypto_aes_cmac_256_encrypt() 1023 if (WARN_ON(skb_queue_len(&tx->skbs) != 1)) in ieee80211_crypto_aes_gmac_encrypt() 1026 skb = skb_peek(&tx->skbs); in ieee80211_crypto_aes_gmac_encrypt()
|
/Linux-v6.1/include/linux/ |
D | skb_array.h | 191 struct sk_buff **skbs, int n) in skb_array_unconsume() argument 193 ptr_ring_unconsume(&a->ring, (void **)skbs, n, __skb_array_destroy_skb); in skb_array_unconsume()
|
/Linux-v6.1/drivers/net/ethernet/netronome/nfp/nfd3/ |
D | xsk.c | 391 unsigned int pkts_polled, skbs = 0; in nfp_nfd3_xsk_poll() local 393 pkts_polled = nfp_nfd3_xsk_rx(r_vec->rx_ring, budget, &skbs); in nfp_nfd3_xsk_poll() 404 if (pkts_polled < budget && napi_complete_done(napi, skbs)) in nfp_nfd3_xsk_poll()
|
/Linux-v6.1/kernel/bpf/ |
D | cpumap.c | 316 void *skbs[CPUMAP_BATCH]; in cpu_map_kthread_run() local 365 m = kmem_cache_alloc_bulk(skbuff_head_cache, gfp, nframes, skbs); in cpu_map_kthread_run() 368 skbs[i] = NULL; /* effect: xdp_return_frame */ in cpu_map_kthread_run() 376 struct sk_buff *skb = skbs[i]; in cpu_map_kthread_run()
|
/Linux-v6.1/drivers/net/ethernet/qlogic/qede/ |
D | qede_fp.c | 79 struct sk_buff *skb = txq->sw_tx_ring.skbs[idx].skb; in qede_free_tx_pkt() 84 bool data_split = txq->sw_tx_ring.skbs[idx].flags & QEDE_TSO_SPLIT_BD; in qede_free_tx_pkt() 124 txq->sw_tx_ring.skbs[idx].skb = NULL; in qede_free_tx_pkt() 125 txq->sw_tx_ring.skbs[idx].flags = 0; in qede_free_tx_pkt() 136 struct sk_buff *skb = txq->sw_tx_ring.skbs[idx].skb; in qede_free_failed_tx_pkt() 172 txq->sw_tx_ring.skbs[idx].skb = NULL; in qede_free_failed_tx_pkt() 173 txq->sw_tx_ring.skbs[idx].flags = 0; in qede_free_failed_tx_pkt() 1518 txq->sw_tx_ring.skbs[idx].skb = skb; in qede_start_xmit() 1640 txq->sw_tx_ring.skbs[idx].flags |= QEDE_TSO_SPLIT_BD; in qede_start_xmit()
|
/Linux-v6.1/net/bpf/ |
D | test_run.c | 110 struct sk_buff **skbs; member 166 xdp->skbs = kvmalloc_array(xdp->batch_size, sizeof(void *), GFP_KERNEL); in xdp_test_run_setup() 167 if (!xdp->skbs) in xdp_test_run_setup() 197 kvfree(xdp->skbs); in xdp_test_run_setup() 208 kfree(xdp->skbs); in xdp_test_run_teardown() 230 struct sk_buff **skbs, in xdp_recv_frames() argument 237 n = kmem_cache_alloc_bulk(skbuff_head_cache, gfp, nframes, (void **)skbs); in xdp_recv_frames() 246 struct sk_buff *skb = skbs[i]; in xdp_recv_frames() 334 ret = xdp_recv_frames(frames, nframes, xdp->skbs, xdp->dev); in xdp_test_run_batch()
|
/Linux-v6.1/drivers/net/wireless/intel/iwlwifi/dvm/ |
D | tx.c | 1122 struct sk_buff_head skbs; in iwlagn_rx_reply_tx() local 1143 __skb_queue_head_init(&skbs); in iwlagn_rx_reply_tx() 1172 iwl_trans_reclaim(priv->trans, txq_id, ssn, &skbs); in iwlagn_rx_reply_tx() 1177 skb_queue_walk(&skbs, skb) { in iwlagn_rx_reply_tx() 1248 while (!skb_queue_empty(&skbs)) { in iwlagn_rx_reply_tx() 1249 skb = __skb_dequeue(&skbs); in iwlagn_rx_reply_tx()
|
/Linux-v6.1/drivers/net/ethernet/mediatek/ |
D | mtk_star_emac.c | 242 struct sk_buff *skbs[MTK_STAR_RING_NUM_DESCS]; member 326 desc_data->skb = ring->skbs[ring->tail]; in mtk_star_ring_pop_tail() 329 ring->skbs[ring->tail] = NULL; in mtk_star_ring_pop_tail() 350 ring->skbs[ring->head] = desc_data->skb; in mtk_star_ring_push_head() 719 ring->skbs[i] = skb; in mtk_star_prepare_rx_skbs() 739 desc_data.skb = ring->skbs[i]; in mtk_star_ring_free_skbs()
|
/Linux-v6.1/drivers/net/ethernet/natsemi/ |
D | ns83820.c | 401 struct sk_buff *skbs[NR_RX_DESC]; member 524 BUG_ON(NULL != dev->rx_info.skbs[next_empty]); in ns83820_add_rx_skb() 525 dev->rx_info.skbs[next_empty] = skb; in ns83820_add_rx_skb() 790 struct sk_buff *skb = dev->rx_info.skbs[i]; in ns83820_cleanup_rx() 791 dev->rx_info.skbs[i] = NULL; in ns83820_cleanup_rx() 856 skb = info->skbs[next_rx]; 857 info->skbs[next_rx] = NULL;
|
/Linux-v6.1/drivers/net/wireless/intel/iwlwifi/queue/ |
D | tx.h | 176 struct sk_buff_head *skbs);
|
/Linux-v6.1/drivers/net/wireless/intel/iwlwifi/ |
D | iwl-trans.h | 566 struct sk_buff_head *skbs); 1190 int ssn, struct sk_buff_head *skbs) in iwl_trans_reclaim() argument 1197 trans->ops->reclaim(trans, queue, ssn, skbs); in iwl_trans_reclaim()
|
/Linux-v6.1/drivers/net/wireless/intel/iwlegacy/ |
D | 3945.c | 283 skb = txq->skbs[txq->q.read_ptr]; in il3945_tx_queue_reclaim() 285 txq->skbs[txq->q.read_ptr] = NULL; in il3945_tx_queue_reclaim() 332 info = IEEE80211_SKB_CB(txq->skbs[txq->q.read_ptr]); in il3945_hdl_tx() 667 if (txq->skbs) { in il3945_hw_txq_free_tfd() 668 struct sk_buff *skb = txq->skbs[txq->q.read_ptr]; in il3945_hw_txq_free_tfd() 673 txq->skbs[txq->q.read_ptr] = NULL; in il3945_hw_txq_free_tfd()
|
/Linux-v6.1/drivers/net/ethernet/chelsio/inline_crypto/chtls/ |
D | chtls_main.c | 422 struct sk_buff **skbs, const __be64 *rsp) in chtls_recv() argument 424 struct sk_buff *skb = *skbs; in chtls_recv()
|
/Linux-v6.1/net/core/ |
D | xdp.c | 603 int xdp_alloc_skb_bulk(void **skbs, int n_skb, gfp_t gfp) in xdp_alloc_skb_bulk() argument 606 n_skb, skbs); in xdp_alloc_skb_bulk()
|