Home
last modified time | relevance | path

Searched refs:pfrag (Results 1 – 19 of 19) sorted by relevance

/OK3568_Linux_fs/kernel/net/tls/
H A Dtls_device.c249 struct page_frag *pfrag, in tls_append_frag() argument
255 if (skb_frag_page(frag) == pfrag->page && in tls_append_frag()
256 skb_frag_off(frag) + skb_frag_size(frag) == pfrag->offset) { in tls_append_frag()
260 __skb_frag_set_page(frag, pfrag->page); in tls_append_frag()
261 skb_frag_off_set(frag, pfrag->offset); in tls_append_frag()
264 get_page(pfrag->page); in tls_append_frag()
267 pfrag->offset += size; in tls_append_frag()
308 struct page_frag *pfrag, in tls_device_record_close() argument
320 if (likely(skb_page_frag_refill(prot->tag_size, pfrag, in tls_device_record_close()
323 tls_append_frag(record, pfrag, prot->tag_size); in tls_device_record_close()
[all …]
/OK3568_Linux_fs/kernel/net/ipv6/
H A Desp6.c509 struct page_frag *pfrag = &x->xfrag; in esp6_output_head() local
517 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp6_output_head()
522 page = pfrag->page; in esp6_output_head()
525 tail = page_address(page) + pfrag->offset; in esp6_output_head()
531 __skb_fill_page_desc(skb, nfrags, page, pfrag->offset, in esp6_output_head()
535 pfrag->offset = pfrag->offset + allocsize; in esp6_output_head()
623 struct page_frag *pfrag = &x->xfrag; in esp6_output_tail() local
628 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp6_output_tail()
635 page = pfrag->page; in esp6_output_tail()
638 __skb_fill_page_desc(skb, 0, page, pfrag->offset, skb->data_len); in esp6_output_tail()
[all …]
H A Dip6_output.c1459 struct page_frag *pfrag, in __ip6_append_data() argument
1755 if (!sk_page_frag_refill(sk, pfrag)) in __ip6_append_data()
1758 if (!skb_can_coalesce(skb, i, pfrag->page, in __ip6_append_data()
1759 pfrag->offset)) { in __ip6_append_data()
1764 __skb_fill_page_desc(skb, i, pfrag->page, in __ip6_append_data()
1765 pfrag->offset, 0); in __ip6_append_data()
1767 get_page(pfrag->page); in __ip6_append_data()
1769 copy = min_t(int, copy, pfrag->size - pfrag->offset); in __ip6_append_data()
1771 page_address(pfrag->page) + pfrag->offset, in __ip6_append_data()
1775 pfrag->offset += copy; in __ip6_append_data()
/OK3568_Linux_fs/kernel/net/ipv4/
H A Desp4.c475 struct page_frag *pfrag = &x->xfrag; in esp_output_head() local
483 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp_output_head()
488 page = pfrag->page; in esp_output_head()
491 tail = page_address(page) + pfrag->offset; in esp_output_head()
497 __skb_fill_page_desc(skb, nfrags, page, pfrag->offset, in esp_output_head()
501 pfrag->offset = pfrag->offset + allocsize; in esp_output_head()
589 struct page_frag *pfrag = &x->xfrag; in esp_output_tail() local
594 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp_output_tail()
601 page = pfrag->page; in esp_output_tail()
604 __skb_fill_page_desc(skb, 0, page, pfrag->offset, skb->data_len); in esp_output_tail()
[all …]
H A Dip_output.c971 struct page_frag *pfrag, in __ip_append_data() argument
1203 if (!sk_page_frag_refill(sk, pfrag)) in __ip_append_data()
1206 if (!skb_can_coalesce(skb, i, pfrag->page, in __ip_append_data()
1207 pfrag->offset)) { in __ip_append_data()
1212 __skb_fill_page_desc(skb, i, pfrag->page, in __ip_append_data()
1213 pfrag->offset, 0); in __ip_append_data()
1215 get_page(pfrag->page); in __ip_append_data()
1217 copy = min_t(int, copy, pfrag->size - pfrag->offset); in __ip_append_data()
1219 page_address(pfrag->page) + pfrag->offset, in __ip_append_data()
1223 pfrag->offset += copy; in __ip_append_data()
H A Dtcp.c1332 struct page_frag *pfrag = sk_page_frag(sk); in tcp_sendmsg_locked() local
1334 if (!sk_page_frag_refill(sk, pfrag)) in tcp_sendmsg_locked()
1337 if (!skb_can_coalesce(skb, i, pfrag->page, in tcp_sendmsg_locked()
1338 pfrag->offset)) { in tcp_sendmsg_locked()
1346 copy = min_t(int, copy, pfrag->size - pfrag->offset); in tcp_sendmsg_locked()
1352 pfrag->page, in tcp_sendmsg_locked()
1353 pfrag->offset, in tcp_sendmsg_locked()
1362 skb_fill_page_desc(skb, i, pfrag->page, in tcp_sendmsg_locked()
1363 pfrag->offset, copy); in tcp_sendmsg_locked()
1364 page_ref_inc(pfrag->page); in tcp_sendmsg_locked()
[all …]
/OK3568_Linux_fs/kernel/net/mptcp/
H A Dprotocol.c769 const struct page_frag *pfrag, in mptcp_frag_can_collapse_to() argument
772 return df && pfrag->page == df->page && in mptcp_frag_can_collapse_to()
773 pfrag->offset == (df->offset + df->data_len) && in mptcp_frag_can_collapse_to()
863 static bool mptcp_page_frag_refill(struct sock *sk, struct page_frag *pfrag) in mptcp_page_frag_refill() argument
866 pfrag, sk->sk_allocation))) in mptcp_page_frag_refill()
875 mptcp_carve_data_frag(const struct mptcp_sock *msk, struct page_frag *pfrag, in mptcp_carve_data_frag() argument
881 dfrag = (struct mptcp_data_frag *)(page_to_virt(pfrag->page) + offset); in mptcp_carve_data_frag()
886 dfrag->page = pfrag->page; in mptcp_carve_data_frag()
902 struct page_frag *pfrag; in mptcp_sendmsg_frag() local
912 pfrag = sk_page_frag(sk); in mptcp_sendmsg_frag()
[all …]
/OK3568_Linux_fs/kernel/drivers/vhost/
H A Dnet.c658 struct page_frag *pfrag, gfp_t gfp) in vhost_net_page_frag_refill() argument
660 if (pfrag->page) { in vhost_net_page_frag_refill()
661 if (pfrag->offset + sz <= pfrag->size) in vhost_net_page_frag_refill()
663 __page_frag_cache_drain(pfrag->page, net->refcnt_bias); in vhost_net_page_frag_refill()
666 pfrag->offset = 0; in vhost_net_page_frag_refill()
670 pfrag->page = alloc_pages((gfp & ~__GFP_DIRECT_RECLAIM) | in vhost_net_page_frag_refill()
674 if (likely(pfrag->page)) { in vhost_net_page_frag_refill()
675 pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER; in vhost_net_page_frag_refill()
679 pfrag->page = alloc_page(gfp); in vhost_net_page_frag_refill()
680 if (likely(pfrag->page)) { in vhost_net_page_frag_refill()
[all …]
/OK3568_Linux_fs/kernel/net/core/
H A Dskmsg.c29 struct page_frag *pfrag = sk_page_frag(sk); in sk_msg_alloc() local
39 if (!sk_page_frag_refill(sk, pfrag)) { in sk_msg_alloc()
44 orig_offset = pfrag->offset; in sk_msg_alloc()
45 use = min_t(int, len, pfrag->size - orig_offset); in sk_msg_alloc()
56 sg_page(sge) == pfrag->page && in sk_msg_alloc()
67 sg_set_page(sge, pfrag->page, use, orig_offset); in sk_msg_alloc()
68 get_page(pfrag->page); in sk_msg_alloc()
74 pfrag->offset += use; in sk_msg_alloc()
H A Dsock.c2464 bool skb_page_frag_refill(unsigned int sz, struct page_frag *pfrag, gfp_t gfp) in skb_page_frag_refill() argument
2466 if (pfrag->page) { in skb_page_frag_refill()
2467 if (page_ref_count(pfrag->page) == 1) { in skb_page_frag_refill()
2468 pfrag->offset = 0; in skb_page_frag_refill()
2471 if (pfrag->offset + sz <= pfrag->size) in skb_page_frag_refill()
2473 put_page(pfrag->page); in skb_page_frag_refill()
2476 pfrag->offset = 0; in skb_page_frag_refill()
2480 pfrag->page = alloc_pages((gfp & ~__GFP_DIRECT_RECLAIM) | in skb_page_frag_refill()
2484 if (likely(pfrag->page)) { in skb_page_frag_refill()
2485 pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER; in skb_page_frag_refill()
[all …]
H A Dskbuff.c2327 struct page_frag *pfrag = sk_page_frag(sk); in linear_to_page() local
2329 if (!sk_page_frag_refill(sk, pfrag)) in linear_to_page()
2332 *len = min_t(unsigned int, *len, pfrag->size - pfrag->offset); in linear_to_page()
2334 memcpy(page_address(pfrag->page) + pfrag->offset, in linear_to_page()
2336 *offset = pfrag->offset; in linear_to_page()
2337 pfrag->offset += *len; in linear_to_page()
2339 return pfrag->page; in linear_to_page()
/OK3568_Linux_fs/kernel/net/kcm/
H A Dkcmsock.c962 struct page_frag *pfrag = sk_page_frag(sk); in kcm_sendmsg() local
964 if (!sk_page_frag_refill(sk, pfrag)) in kcm_sendmsg()
967 if (!skb_can_coalesce(skb, i, pfrag->page, in kcm_sendmsg()
968 pfrag->offset)) { in kcm_sendmsg()
989 pfrag->size - pfrag->offset); in kcm_sendmsg()
995 pfrag->page, in kcm_sendmsg()
996 pfrag->offset, in kcm_sendmsg()
1005 skb_fill_page_desc(skb, i, pfrag->page, in kcm_sendmsg()
1006 pfrag->offset, copy); in kcm_sendmsg()
1007 get_page(pfrag->page); in kcm_sendmsg()
[all …]
/OK3568_Linux_fs/kernel/drivers/net/ethernet/mellanox/mlx4/
H A Den_tx.c602 void **pfrag) in is_inline() argument
613 *pfrag = ptr; in is_inline()
637 void **pfrag) in get_real_size() argument
664 shinfo, pfrag); in get_real_size()
/OK3568_Linux_fs/kernel/fs/ceph/
H A Dinode.c192 struct ceph_inode_frag *pfrag, int *found) in __ceph_choose_frag() argument
208 if (pfrag) in __ceph_choose_frag()
209 memcpy(pfrag, frag, sizeof(*pfrag)); in __ceph_choose_frag()
234 struct ceph_inode_frag *pfrag, int *found) in ceph_choose_frag() argument
238 ret = __ceph_choose_frag(ci, v, pfrag, found); in ceph_choose_frag()
H A Dsuper.h681 struct ceph_inode_frag *pfrag,
/OK3568_Linux_fs/kernel/drivers/scsi/be2iscsi/
H A Dbe_main.c2121 psgl = (struct iscsi_sge *)io_task->psgl_handle->pfrag; in hwi_write_sgl_v2()
2210 psgl = (struct iscsi_sge *)io_task->psgl_handle->pfrag; in hwi_write_sgl()
2313 psgl = (struct iscsi_sge *)io_task->psgl_handle->pfrag; in hwi_write_buffer()
3884 struct iscsi_sge *pfrag; in beiscsi_init_sgl_handle() local
3962 pfrag = mem_descr_sg->mem_array[idx].virtual_address; in beiscsi_init_sgl_handle()
3973 psgl_handle->pfrag = pfrag; in beiscsi_init_sgl_handle()
3974 AMAP_SET_BITS(struct amap_iscsi_sge, addr_hi, pfrag, 0); in beiscsi_init_sgl_handle()
3975 AMAP_SET_BITS(struct amap_iscsi_sge, addr_lo, pfrag, 0); in beiscsi_init_sgl_handle()
3976 pfrag += phba->params.num_sge_per_io; in beiscsi_init_sgl_handle()
H A Dbe_main.h213 struct iscsi_sge *pfrag; member
/OK3568_Linux_fs/kernel/include/net/
H A Dsock.h2396 bool sk_page_frag_refill(struct sock *sk, struct page_frag *pfrag);
/OK3568_Linux_fs/kernel/include/linux/
H A Dskbuff.h3155 bool skb_page_frag_refill(unsigned int sz, struct page_frag *pfrag, gfp_t prio);