/linux-master/io_uring/ |
H A D | net.c | 1278 struct skb_shared_info *shinfo = skb_shinfo(skb); local 1279 int frag = shinfo->nr_frags; 1286 shinfo->flags |= SKBFL_MANAGED_FRAG_REFS; 1299 __skb_fill_page_desc_noacc(shinfo, frag++, v.bv_page, 1306 shinfo->nr_frags = frag;
|
/linux-master/include/linux/ |
H A D | skbuff.h | 1231 struct skb_shared_info *shinfo) 1240 if (atomic_read(&shinfo->dataref) == bias) 1242 else if (atomic_sub_return(bias, &shinfo->dataref)) 2468 static inline void __skb_fill_netmem_desc_noacc(struct skb_shared_info *shinfo, argument 2472 skb_frag_t *frag = &shinfo->frags[i]; 2477 static inline void __skb_fill_page_desc_noacc(struct skb_shared_info *shinfo, argument 2481 __skb_fill_netmem_desc_noacc(shinfo, i, page_to_netmem(page), off, 2574 struct skb_shared_info *shinfo = skb_shinfo(skb); local 2576 __skb_fill_page_desc_noacc(shinfo, i, page, off, size); 2577 shinfo 1230 skb_data_unref(const struct sk_buff *skb, struct skb_shared_info *shinfo) argument 4919 skb_increase_gso_size(struct skb_shared_info *shinfo, u16 increment) argument 4927 skb_decrease_gso_size(struct skb_shared_info *shinfo, u16 decrement) argument 4941 const struct skb_shared_info *shinfo = skb_shinfo(skb); local [all...] |
H A D | skbuff_ref.h | 69 struct skb_shared_info *shinfo = skb_shinfo(skb); local 72 __skb_frag_unref(&shinfo->frags[f], skb->pp_recycle);
|
/linux-master/drivers/net/ |
H A D | virtio_net.c | 1032 struct skb_shared_info *shinfo; local 1040 shinfo = xdp_get_shared_info_from_frame(xdpf); 1041 nr_frags = shinfo->nr_frags; 1061 skb_frag_t *frag = &shinfo->frags[i]; 1174 struct skb_shared_info *shinfo; local 1179 shinfo = xdp_get_shared_info_from_buff(xdp); 1180 for (i = 0; i < shinfo->nr_frags; i++) { 1181 xdp_page = skb_frag_page(&shinfo->frags[i]); 1582 struct skb_shared_info *shinfo; local 1604 shinfo [all...] |
/linux-master/drivers/net/ethernet/hisilicon/hns3/ |
H A D | hns3_enet.c | 1885 void hns3_shinfo_pack(struct skb_shared_info *shinfo, __u32 *size) argument 1890 size[i] = skb_frag_size(&shinfo->frags[i]);
|
/linux-master/tools/testing/selftests/kvm/x86_64/ |
H A D | xen_shinfo_test.c | 384 static struct shared_info *shinfo; variable in typeref:struct:shared_info 412 .u.shared_info.hva = (unsigned long)shinfo 464 shinfo = addr_gpa2hva(vm, SHINFO_VADDR); 504 ha.u.shared_info.hva = (unsigned long)shinfo; 513 * Test what happens when the HVA of the shinfo page is remapped after 517 struct pvclock_wall_clock wc_copy = shinfo->wc; 518 void *m = mmap(shinfo, PAGE_SIZE, PROT_READ|PROT_WRITE, MAP_FIXED|MAP_PRIVATE, zero_fd, 0); 519 TEST_ASSERT(m == shinfo, "Failed to map /dev/zero over shared info"); 520 shinfo->wc = wc_copy; 714 shinfo [all...] |
/linux-master/net/tls/ |
H A D | tls_strp.c | 32 struct skb_shared_info *shinfo = skb_shinfo(strp->anchor); local 34 DEBUG_NET_WARN_ON_ONCE(atomic_read(&shinfo->dataref) != 1); 36 shinfo->frag_list = NULL; 147 struct skb_shared_info *shinfo = skb_shinfo(strp->anchor); local 152 WARN_ON_ONCE(!shinfo->nr_frags); 167 iter = shinfo->frag_list; 194 struct skb_shared_info *shinfo = skb_shinfo(strp->anchor); local 197 DEBUG_NET_WARN_ON_ONCE(atomic_read(&shinfo->dataref) != 1); 199 for (i = 0; i < shinfo->nr_frags; i++) 200 __skb_frag_unref(&shinfo 285 struct skb_shared_info *shinfo; local 387 struct skb_shared_info *shinfo; local [all...] |
/linux-master/net/sched/ |
H A D | sch_cake.c | 1352 const struct skb_shared_info *shinfo = skb_shinfo(skb); local 1360 if (!shinfo->gso_size) 1367 if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | 1384 if (unlikely(shinfo->gso_type & SKB_GSO_DODGY)) 1386 shinfo->gso_size); 1388 segs = shinfo->gso_segs; 1390 len = shinfo->gso_size + hdr_len; 1391 last_len = skb->len - shinfo->gso_size * (segs - 1);
|
/linux-master/net/ipv4/ |
H A D | tcp_output.c | 1560 struct skb_shared_info *shinfo = skb_shinfo(skb); local 1563 !before(shinfo->tskey, TCP_SKB_CB(skb2)->seq)) { 1565 u8 tsflags = shinfo->tx_flags & SKBTX_ANY_TSTAMP; 1567 shinfo->tx_flags &= ~tsflags; 1569 swap(shinfo->tskey, shinfo2->tskey); 1695 struct skb_shared_info *shinfo; local 1701 shinfo = skb_shinfo(skb); 1702 for (i = 0; i < shinfo->nr_frags; i++) { 1703 int size = skb_frag_size(&shinfo->frags[i]); 1709 shinfo 3210 struct skb_shared_info *shinfo = skb_shinfo(skb); local [all...] |
H A D | tcp_offload.c | 382 struct skb_shared_info *shinfo; local 391 shinfo = skb_shinfo(skb); 392 shinfo->gso_segs = NAPI_GRO_CB(skb)->count; 395 shinfo->gso_type |= SKB_GSO_TCP_ECN;
|
H A D | tcp_ipv4.c | 2007 struct skb_shared_info *shinfo; local 2065 shinfo = skb_shinfo(skb); 2066 gso_size = shinfo->gso_size ?: skb->len; 2067 gso_segs = shinfo->gso_segs ?: 1; 2069 shinfo = skb_shinfo(tail); 2070 tail_gso_size = shinfo->gso_size ?: (tail->len - hdrlen); 2071 tail_gso_segs = shinfo->gso_segs ?: 1; 2099 shinfo->gso_size = max(gso_size, tail_gso_size); 2100 shinfo->gso_segs = min_t(u32, gso_segs + tail_gso_segs, 0xFFFF);
|
H A D | tcp_input.c | 3263 const struct skb_shared_info *shinfo; local 3265 /* Avoid cache line misses to get skb_shinfo() and shinfo->tx_flags */ 3269 shinfo = skb_shinfo(skb); 3270 if (!before(shinfo->tskey, prior_snd_una) && 3271 before(shinfo->tskey, tcp_sk(sk)->snd_una)) {
|
H A D | tcp.c | 479 struct skb_shared_info *shinfo = skb_shinfo(skb); local 482 sock_tx_timestamp(sk, tsflags, &shinfo->tx_flags); 486 shinfo->tskey = TCP_SKB_CB(skb)->seq + skb->len - 1;
|
/linux-master/net/core/ |
H A D | skbuff.c | 363 struct skb_shared_info *shinfo; local 377 /* make sure we initialize shinfo sequentially */ 378 shinfo = skb_shinfo(skb); 379 memset(shinfo, 0, offsetof(struct skb_shared_info, dataref)); 380 atomic_set(&shinfo->dataref, 1); 1045 struct skb_shared_info *shinfo; local 1052 shinfo = skb_shinfo(skb); 1054 for (i = 0; i < shinfo->nr_frags; i++) { 1055 head_page = compound_head(skb_frag_page(&shinfo->frags[i])); 1087 struct skb_shared_info *shinfo local 2334 struct skb_shared_info *shinfo; local 6605 pskb_carve_frag_list(struct sk_buff *skb, struct skb_shared_info *shinfo, int eat, gfp_t gfp_mask) argument 6666 struct skb_shared_info *shinfo; local [all...] |
H A D | filter.c | 3303 struct skb_shared_info *shinfo = skb_shinfo(skb); local 3306 if (shinfo->gso_type & SKB_GSO_TCPV4) { 3307 shinfo->gso_type &= ~SKB_GSO_TCPV4; 3308 shinfo->gso_type |= SKB_GSO_TCPV6; 3333 struct skb_shared_info *shinfo = skb_shinfo(skb); local 3336 if (shinfo->gso_type & SKB_GSO_TCPV6) { 3337 shinfo->gso_type &= ~SKB_GSO_TCPV6; 3338 shinfo->gso_type |= SKB_GSO_TCPV4; 3540 struct skb_shared_info *shinfo = skb_shinfo(skb); local 3544 skb_decrease_gso_size(shinfo, len_dif 3588 struct skb_shared_info *shinfo = skb_shinfo(skb); local [all...] |
H A D | dev.c | 3728 const struct skb_shared_info *shinfo = skb_shinfo(skb); local 3735 if (shinfo->gso_size && skb_transport_header_was_set(skb)) { 3736 u16 gso_segs = shinfo->gso_segs; 3743 if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) { 3759 if (shinfo->gso_type & SKB_GSO_DODGY) 3761 shinfo->gso_size);
|
/linux-master/drivers/net/xen-netback/ |
H A D | netback.c | 386 struct skb_shared_info *shinfo = skb_shinfo(skb); local 387 skb_frag_t *frags = shinfo->frags; 395 nr_slots = shinfo->nr_frags + frag_overflow + 1; 461 for (shinfo->nr_frags = 0; nr_slots > 0 && shinfo->nr_frags < MAX_SKB_FRAGS; 473 frag_set_pending_idx(&frags[shinfo->nr_frags], pending_idx); 474 ++shinfo->nr_frags; 485 shinfo = skb_shinfo(nskb); 486 frags = shinfo->frags; 488 for (shinfo 560 struct skb_shared_info *shinfo = skb_shinfo(skb); local 689 struct skb_shared_info *shinfo = skb_shinfo(skb); local [all...] |
/linux-master/drivers/net/wireless/mediatek/mt76/ |
H A D | dma.c | 807 struct skb_shared_info *shinfo = skb_shinfo(skb); local 808 int nr_frags = shinfo->nr_frags; 810 if (nr_frags < ARRAY_SIZE(shinfo->frags)) { 823 if (nr_frags < ARRAY_SIZE(shinfo->frags))
|
/linux-master/drivers/net/ethernet/realtek/ |
H A D | r8169_main.c | 4257 struct skb_shared_info *shinfo = skb_shinfo(skb); local 4258 u32 mss = shinfo->gso_size; 4261 if (shinfo->gso_type & SKB_GSO_TCPV4) { 4263 } else if (shinfo->gso_type & SKB_GSO_TCPV6) {
|
/linux-master/drivers/net/ethernet/marvell/octeon_ep_vf/ |
H A D | octep_vf_main.c | 603 struct skb_shared_info *shinfo; local 622 shinfo = skb_shinfo(skb); 623 nr_frags = shinfo->nr_frags; 666 frag = &shinfo->frags[0];
|
/linux-master/drivers/net/ethernet/marvell/octeon_ep/ |
H A D | octep_main.c | 849 struct skb_shared_info *shinfo; local 868 shinfo = skb_shinfo(skb); 869 nr_frags = shinfo->nr_frags; 911 frag = &shinfo->frags[0];
|
/linux-master/drivers/net/ethernet/intel/idpf/ |
H A D | idpf_txrx.c | 2075 const struct skb_shared_info *shinfo; local 2083 shinfo = skb_shinfo(skb); 2084 for (i = 0; i < shinfo->nr_frags; i++) { 2087 size = skb_frag_size(&shinfo->frags[i]); 2367 const struct skb_shared_info *shinfo; local 2388 shinfo = skb_shinfo(skb); 2406 switch (shinfo->gso_type & ~SKB_GSO_DODGY) { 2418 l4.udp->len = htons(shinfo->gso_size + sizeof(struct udphdr)); 2425 off->mss = shinfo->gso_size; 2426 off->tso_segs = shinfo 2446 const struct skb_shared_info *shinfo = skb_shinfo(skb); local [all...] |
/linux-master/drivers/net/ethernet/intel/e1000e/ |
H A D | netdev.c | 1519 struct skb_shared_info *shinfo; local 1575 shinfo = skb_shinfo(rxtop); 1576 skb_fill_page_desc(rxtop, shinfo->nr_frags, 1587 shinfo = skb_shinfo(rxtop); 1588 skb_fill_page_desc(rxtop, shinfo->nr_frags,
|
/linux-master/drivers/net/ethernet/google/gve/ |
H A D | gve_tx_dqo.c | 639 const struct skb_shared_info *shinfo = skb_shinfo(skb); local 666 /*eop=*/shinfo->nr_frags == 0, is_gso); 669 for (i = 0; i < shinfo->nr_frags; i++) { 670 const skb_frag_t *frag = &shinfo->frags[i]; 671 bool is_eop = i == (shinfo->nr_frags - 1); 850 const struct skb_shared_info *shinfo = skb_shinfo(skb); local 856 for (i = 0; i < shinfo->nr_frags; i++) { 857 unsigned int frag_size = skb_frag_size(&shinfo->frags[i]); 875 const struct skb_shared_info *shinfo = skb_shinfo(skb); local 877 const int gso_size = shinfo [all...] |
H A D | gve_tx.c | 642 const struct skb_shared_info *shinfo = skb_shinfo(skb); local 675 num_descriptors = 1 + shinfo->nr_frags; 704 for (i = 0; i < shinfo->nr_frags; i++) { 705 const skb_frag_t *frag = &shinfo->frags[i]; 727 i += num_descriptors - shinfo->nr_frags;
|