Home
last modified time | relevance | path

Searched refs:shinfo (Results 1 – 25 of 38) sorted by relevance

12

/openbmc/linux/net/tls/
H A Dtls_strp.c31 struct skb_shared_info *shinfo = skb_shinfo(strp->anchor); in tls_strp_anchor_free() local
33 DEBUG_NET_WARN_ON_ONCE(atomic_read(&shinfo->dataref) != 1); in tls_strp_anchor_free()
35 shinfo->frag_list = NULL; in tls_strp_anchor_free()
146 struct skb_shared_info *shinfo = skb_shinfo(strp->anchor); in tls_strp_msg_hold() local
151 WARN_ON_ONCE(!shinfo->nr_frags); in tls_strp_msg_hold()
166 iter = shinfo->frag_list; in tls_strp_msg_hold()
193 struct skb_shared_info *shinfo = skb_shinfo(strp->anchor); in tls_strp_flush_anchor_copy() local
196 DEBUG_NET_WARN_ON_ONCE(atomic_read(&shinfo->dataref) != 1); in tls_strp_flush_anchor_copy()
198 for (i = 0; i < shinfo->nr_frags; i++) in tls_strp_flush_anchor_copy()
199 __skb_frag_unref(&shinfo->frags[i], false); in tls_strp_flush_anchor_copy()
[all …]
/openbmc/qemu/hw/i386/kvm/
H A Dxen_evtchn.c682 bool do_unmask, struct shared_info *shinfo, in do_unmask_port_lm() argument
685 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in do_unmask_port_lm()
686 typeof(shinfo->evtchn_pending[0]) mask; in do_unmask_port_lm()
701 if (!((qatomic_fetch_and(&shinfo->evtchn_mask[idx], ~mask) & mask))) { in do_unmask_port_lm()
710 if (qatomic_fetch_or(&shinfo->evtchn_mask[idx], 0) & mask) { in do_unmask_port_lm()
716 if (!(qatomic_fetch_or(&shinfo->evtchn_pending[idx], 0) & mask)) { in do_unmask_port_lm()
740 struct compat_shared_info *shinfo, in do_unmask_port_compat() argument
743 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in do_unmask_port_compat()
744 typeof(shinfo->evtchn_pending[0]) mask; in do_unmask_port_compat()
759 if (!((qatomic_fetch_and(&shinfo->evtchn_mask[idx], ~mask) & mask))) { in do_unmask_port_compat()
[all …]
/openbmc/linux/net/core/
H A Dgso.c145 const struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_gso_transport_seglen() local
152 if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) in skb_gso_transport_seglen()
154 } else if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) { in skb_gso_transport_seglen()
158 } else if (shinfo->gso_type & SKB_GSO_UDP_L4) { in skb_gso_transport_seglen()
165 return thlen + shinfo->gso_size; in skb_gso_transport_seglen()
226 const struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_gso_size_check() local
229 if (shinfo->gso_size != GSO_BY_FRAGS) in skb_gso_size_check()
H A Dlwt_bpf.c526 struct skb_shared_info *shinfo = skb_shinfo(skb); in handle_gso_type() local
529 shinfo->gso_type |= gso_type; in handle_gso_type()
530 skb_decrease_gso_size(shinfo, encap_len); in handle_gso_type()
531 shinfo->gso_segs = 0; in handle_gso_type()
H A Dskbuff.c347 struct skb_shared_info *shinfo; in __finalize_skb_around() local
362 shinfo = skb_shinfo(skb); in __finalize_skb_around()
363 memset(shinfo, 0, offsetof(struct skb_shared_info, dataref)); in __finalize_skb_around()
364 atomic_set(&shinfo->dataref, 1); in __finalize_skb_around()
964 struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_release_data() local
969 &shinfo->dataref)) in skb_release_data()
973 bool skip_unref = shinfo->flags & SKBFL_MANAGED_FRAG_REFS; in skb_release_data()
980 for (i = 0; i < shinfo->nr_frags; i++) in skb_release_data()
981 napi_frag_unref(&shinfo->frags[i], skb->pp_recycle, napi_safe); in skb_release_data()
984 if (shinfo->frag_list) in skb_release_data()
[all …]
/openbmc/linux/drivers/net/ethernet/mellanox/mlx4/
H A Den_tx.c606 const struct skb_shared_info *shinfo, in is_inline() argument
614 if (shinfo->nr_frags == 1) { in is_inline()
615 ptr = skb_frag_address_safe(&shinfo->frags[0]); in is_inline()
621 if (shinfo->nr_frags) in is_inline()
638 const struct skb_shared_info *shinfo, in get_real_size() argument
648 if (shinfo->gso_size) { in get_real_size()
662 real_size = CTRL_SIZE + shinfo->nr_frags * DS_SIZE + in get_real_size()
678 shinfo, pfrag); in get_real_size()
684 (shinfo->nr_frags + 1) * DS_SIZE; in get_real_size()
692 const struct skb_shared_info *shinfo, in build_inline_wqe() argument
[all …]
/openbmc/linux/tools/testing/selftests/kvm/x86_64/
H A Dxen_shinfo_test.c455 struct shared_info *shinfo = addr_gpa2hva(vm, SHINFO_VADDR); in main() local
502 struct pvclock_wall_clock wc_copy = shinfo->wc; in main()
503 void *m = mmap(shinfo, PAGE_SIZE, PROT_READ|PROT_WRITE, MAP_FIXED|MAP_PRIVATE, zero_fd, 0); in main()
504 TEST_ASSERT(m == shinfo, "Failed to map /dev/zero over shared info"); in main()
505 shinfo->wc = wc_copy; in main()
701 shinfo->evtchn_mask[0] = 1UL << EVTCHN_TEST1; in main()
710 shinfo->evtchn_pending[0] = 0; in main()
711 shinfo->evtchn_mask[0] = 0; in main()
720 shinfo->evtchn_pending[1] = 0; in main()
736 shinfo->evtchn_pending[0] = 0; in main()
[all …]
/openbmc/linux/drivers/net/xen-netback/
H A Dnetback.c385 struct skb_shared_info *shinfo = skb_shinfo(skb); in xenvif_get_requests() local
386 skb_frag_t *frags = shinfo->frags; in xenvif_get_requests()
394 nr_slots = shinfo->nr_frags + frag_overflow + 1; in xenvif_get_requests()
460 for (shinfo->nr_frags = 0; nr_slots > 0 && shinfo->nr_frags < MAX_SKB_FRAGS; in xenvif_get_requests()
472 frag_set_pending_idx(&frags[shinfo->nr_frags], pending_idx); in xenvif_get_requests()
473 ++shinfo->nr_frags; in xenvif_get_requests()
484 shinfo = skb_shinfo(nskb); in xenvif_get_requests()
485 frags = shinfo->frags; in xenvif_get_requests()
487 for (shinfo->nr_frags = 0; shinfo->nr_frags < nr_slots; ++txp) { in xenvif_get_requests()
498 frag_set_pending_idx(&frags[shinfo->nr_frags], in xenvif_get_requests()
[all …]
/openbmc/linux/include/linux/
H A Dvirtio_net.h159 struct skb_shared_info *shinfo = skb_shinfo(skb); in virtio_net_hdr_to_skb() local
190 shinfo->gso_size = gso_size; in virtio_net_hdr_to_skb()
191 shinfo->gso_type = gso_type; in virtio_net_hdr_to_skb()
194 shinfo->gso_type |= SKB_GSO_DODGY; in virtio_net_hdr_to_skb()
195 shinfo->gso_segs = 0; in virtio_net_hdr_to_skb()
H A Dskbuff.h2426 static inline void __skb_fill_page_desc_noacc(struct skb_shared_info *shinfo, in __skb_fill_page_desc_noacc() argument
2430 skb_frag_t *frag = &shinfo->frags[i]; in __skb_fill_page_desc_noacc()
2510 struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_fill_page_desc_noacc() local
2512 __skb_fill_page_desc_noacc(shinfo, i, page, off, size); in skb_fill_page_desc_noacc()
2513 shinfo->nr_frags = i + 1; in skb_fill_page_desc_noacc()
3506 struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_frag_unref() local
3509 __skb_frag_unref(&shinfo->frags[f], skb->pp_recycle); in skb_frag_unref()
4926 static inline void skb_increase_gso_size(struct skb_shared_info *shinfo, in skb_increase_gso_size() argument
4929 if (WARN_ON_ONCE(shinfo->gso_size == GSO_BY_FRAGS)) in skb_increase_gso_size()
4931 shinfo->gso_size += increment; in skb_increase_gso_size()
[all …]
/openbmc/linux/drivers/net/ethernet/fungible/funeth/
H A Dfuneth_tx.c154 const struct skb_shared_info *shinfo; in write_pkt_desc() local
164 shinfo = skb_shinfo(skb); in write_pkt_desc()
165 if (unlikely(fun_map_pkt(q->dma_dev, shinfo, skb->data, in write_pkt_desc()
179 if (likely(shinfo->gso_size)) { in write_pkt_desc()
186 if (shinfo->gso_type & (SKB_GSO_UDP_TUNNEL | in write_pkt_desc()
190 if (shinfo->gso_type & SKB_GSO_UDP_TUNNEL_CSUM) in write_pkt_desc()
213 shinfo->gso_size, in write_pkt_desc()
219 } else if (shinfo->gso_type & SKB_GSO_UDP_L4) { in write_pkt_desc()
232 shinfo->gso_size, in write_pkt_desc()
242 if (shinfo->gso_type & SKB_GSO_TCPV6) in write_pkt_desc()
[all …]
/openbmc/linux/drivers/net/ethernet/marvell/octeon_ep/
H A Doctep_tx.c38 struct skb_shared_info *shinfo; in octep_iq_process_completions() local
67 shinfo = skb_shinfo(skb); in octep_iq_process_completions()
68 frags = shinfo->nr_frags; in octep_iq_process_completions()
108 struct skb_shared_info *shinfo; in octep_iq_free_pending() local
129 shinfo = skb_shinfo(skb); in octep_iq_free_pending()
130 frags = shinfo->nr_frags; in octep_iq_free_pending()
H A Doctep_rx.c452 struct skb_shared_info *shinfo; in __octep_oq_process_rx() local
459 shinfo = skb_shinfo(skb); in __octep_oq_process_rx()
472 skb_add_rx_frag(skb, shinfo->nr_frags, in __octep_oq_process_rx()
H A Doctep_main.c633 struct skb_shared_info *shinfo; in octep_start_xmit() local
652 shinfo = skb_shinfo(skb); in octep_start_xmit()
653 nr_frags = shinfo->nr_frags; in octep_start_xmit()
697 frag = &shinfo->frags[0]; in octep_start_xmit()
/openbmc/linux/drivers/net/ethernet/google/gve/
H A Dgve_tx_dqo.c575 const struct skb_shared_info *shinfo = skb_shinfo(skb); in gve_tx_add_skb_no_copy_dqo() local
602 /*eop=*/shinfo->nr_frags == 0, is_gso); in gve_tx_add_skb_no_copy_dqo()
605 for (i = 0; i < shinfo->nr_frags; i++) { in gve_tx_add_skb_no_copy_dqo()
606 const skb_frag_t *frag = &shinfo->frags[i]; in gve_tx_add_skb_no_copy_dqo()
607 bool is_eop = i == (shinfo->nr_frags - 1); in gve_tx_add_skb_no_copy_dqo()
786 const struct skb_shared_info *shinfo = skb_shinfo(skb); in gve_num_buffer_descs_needed() local
792 for (i = 0; i < shinfo->nr_frags; i++) { in gve_num_buffer_descs_needed()
793 unsigned int frag_size = skb_frag_size(&shinfo->frags[i]); in gve_num_buffer_descs_needed()
811 const struct skb_shared_info *shinfo = skb_shinfo(skb); in gve_can_send_tso() local
813 const int gso_size = shinfo->gso_size; in gve_can_send_tso()
[all …]
H A Dgve_tx.c586 const struct skb_shared_info *shinfo = skb_shinfo(skb); in gve_tx_add_skb_no_copy() local
619 num_descriptors = 1 + shinfo->nr_frags; in gve_tx_add_skb_no_copy()
648 for (i = 0; i < shinfo->nr_frags; i++) { in gve_tx_add_skb_no_copy()
649 const skb_frag_t *frag = &shinfo->frags[i]; in gve_tx_add_skb_no_copy()
671 i += num_descriptors - shinfo->nr_frags; in gve_tx_add_skb_no_copy()
H A Dgve_rx_dqo.c703 struct skb_shared_info *shinfo = skb_shinfo(skb); in gve_rx_complete_rsc() local
711 shinfo->gso_type = SKB_GSO_TCPV4; in gve_rx_complete_rsc()
714 shinfo->gso_type = SKB_GSO_TCPV6; in gve_rx_complete_rsc()
720 shinfo->gso_size = le16_to_cpu(desc->rsc_seg_len); in gve_rx_complete_rsc()
/openbmc/linux/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt_xdp.c206 struct skb_shared_info *shinfo; in bnxt_xdp_buff_frags_free() local
211 shinfo = xdp_get_shared_info_from_buff(xdp); in bnxt_xdp_buff_frags_free()
212 for (i = 0; i < shinfo->nr_frags; i++) { in bnxt_xdp_buff_frags_free()
213 struct page *page = skb_frag_page(&shinfo->frags[i]); in bnxt_xdp_buff_frags_free()
217 shinfo->nr_frags = 0; in bnxt_xdp_buff_frags_free()
/openbmc/linux/arch/x86/kvm/
H A Dxen.c84 struct shared_info *shinfo = gpc->khva; in kvm_xen_shared_info_init() local
86 wc_sec_hi = &shinfo->wc_sec_hi; in kvm_xen_shared_info_init()
87 wc = &shinfo->wc; in kvm_xen_shared_info_init()
91 struct compat_shared_info *shinfo = gpc->khva; in kvm_xen_shared_info_init() local
93 wc_sec_hi = &shinfo->arch.wc_sec_hi; in kvm_xen_shared_info_init()
94 wc = &shinfo->wc; in kvm_xen_shared_info_init()
1184 struct shared_info *shinfo = gpc->khva; in wait_pending_event() local
1185 pending_bits = (unsigned long *)&shinfo->evtchn_pending; in wait_pending_event()
1187 struct compat_shared_info *shinfo = gpc->khva; in wait_pending_event() local
1188 pending_bits = (unsigned long *)&shinfo->evtchn_pending; in wait_pending_event()
[all …]
/openbmc/linux/drivers/net/wwan/t7xx/
H A Dt7xx_hif_dpmaif_tx.c247 struct skb_shared_info *shinfo; in t7xx_dpmaif_add_skb_to_ring() local
261 shinfo = skb_shinfo(skb); in t7xx_dpmaif_add_skb_to_ring()
262 if (shinfo->frag_list) in t7xx_dpmaif_add_skb_to_ring()
265 payload_cnt = shinfo->nr_frags + 1; in t7xx_dpmaif_add_skb_to_ring()
290 skb_frag_t *frag = shinfo->frags + wr_cnt - 1; in t7xx_dpmaif_add_skb_to_ring()
/openbmc/linux/net/ipv4/
H A Dtcp_output.c1509 struct skb_shared_info *shinfo = skb_shinfo(skb); in tcp_fragment_tstamp() local
1512 !before(shinfo->tskey, TCP_SKB_CB(skb2)->seq)) { in tcp_fragment_tstamp()
1514 u8 tsflags = shinfo->tx_flags & SKBTX_ANY_TSTAMP; in tcp_fragment_tstamp()
1516 shinfo->tx_flags &= ~tsflags; in tcp_fragment_tstamp()
1518 swap(shinfo->tskey, shinfo2->tskey); in tcp_fragment_tstamp()
1644 struct skb_shared_info *shinfo; in __pskb_trim_head() local
1650 shinfo = skb_shinfo(skb); in __pskb_trim_head()
1651 for (i = 0; i < shinfo->nr_frags; i++) { in __pskb_trim_head()
1652 int size = skb_frag_size(&shinfo->frags[i]); in __pskb_trim_head()
1658 shinfo->frags[k] = shinfo->frags[i]; in __pskb_trim_head()
[all …]
/openbmc/linux/drivers/net/ethernet/freescale/enetc/
H A Denetc.c1316 struct skb_shared_info *shinfo; in enetc_xdp_frame_to_xdp_tx_swbd() local
1344 shinfo = xdp_get_shared_info_from_frame(xdp_frame); in enetc_xdp_frame_to_xdp_tx_swbd()
1346 for (f = 0, frag = &shinfo->frags[0]; f < shinfo->nr_frags; in enetc_xdp_frame_to_xdp_tx_swbd()
1442 struct skb_shared_info *shinfo = xdp_get_shared_info_from_buff(xdp_buff); in enetc_add_rx_buff_to_xdp() local
1451 shinfo->xdp_frags_size = size; in enetc_add_rx_buff_to_xdp()
1452 shinfo->nr_frags = 0; in enetc_add_rx_buff_to_xdp()
1454 shinfo->xdp_frags_size += size; in enetc_add_rx_buff_to_xdp()
1460 frag = &shinfo->frags[shinfo->nr_frags]; in enetc_add_rx_buff_to_xdp()
1464 shinfo->nr_frags++; in enetc_add_rx_buff_to_xdp()
/openbmc/linux/drivers/net/wireless/mediatek/mt76/
H A Ddma.c782 struct skb_shared_info *shinfo = skb_shinfo(skb); in mt76_add_fragment() local
783 int nr_frags = shinfo->nr_frags; in mt76_add_fragment()
785 if (nr_frags < ARRAY_SIZE(shinfo->frags)) { in mt76_add_fragment()
798 if (nr_frags < ARRAY_SIZE(shinfo->frags)) in mt76_add_fragment()
/openbmc/linux/drivers/net/
H A Dvirtio_net.c843 struct skb_shared_info *shinfo; in __virtnet_xdp_xmit_one() local
851 shinfo = xdp_get_shared_info_from_frame(xdpf); in __virtnet_xdp_xmit_one()
852 nr_frags = shinfo->nr_frags; in __virtnet_xdp_xmit_one()
872 skb_frag_t *frag = &shinfo->frags[i]; in __virtnet_xdp_xmit_one()
1001 struct skb_shared_info *shinfo; in put_xdp_frags() local
1006 shinfo = xdp_get_shared_info_from_buff(xdp); in put_xdp_frags()
1007 for (i = 0; i < shinfo->nr_frags; i++) { in put_xdp_frags()
1008 xdp_page = skb_frag_page(&shinfo->frags[i]); in put_xdp_frags()
1418 struct skb_shared_info *shinfo; in virtnet_build_xdp_buff_mrg() local
1440 shinfo = xdp_get_shared_info_from_buff(xdp); in virtnet_build_xdp_buff_mrg()
[all …]
/openbmc/linux/io_uring/
H A Dnet.c1114 struct skb_shared_info *shinfo = skb_shinfo(skb); in io_sg_from_iter() local
1115 int frag = shinfo->nr_frags; in io_sg_from_iter()
1122 shinfo->flags |= SKBFL_MANAGED_FRAG_REFS; in io_sg_from_iter()
1135 __skb_fill_page_desc_noacc(shinfo, frag++, v.bv_page, in io_sg_from_iter()
1142 shinfo->nr_frags = frag; in io_sg_from_iter()

12