/linux/net/tls/ |
A D | tls_device.c | 247 struct page_frag *pfrag, in tls_append_frag() argument 262 get_page(pfrag->page); in tls_append_frag() 265 pfrag->offset += size; in tls_append_frag() 306 struct page_frag *pfrag, in tls_device_record_close() argument 336 struct page_frag *pfrag, in tls_create_new_record() argument 351 get_page(pfrag->page); in tls_create_new_record() 352 pfrag->offset += prepend_size; in tls_create_new_record() 379 if (pfrag->size > pfrag->offset) in tls_do_allocation() 424 struct page_frag *pfrag; in tls_push_data() local 449 pfrag = sk_page_frag(sk); in tls_push_data() [all …]
|
/linux/net/ipv6/ |
A D | esp6.c | 505 struct page_frag *pfrag = &x->xfrag; in esp6_output_head() local 513 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp6_output_head() 518 page = pfrag->page; in esp6_output_head() 521 tail = page_address(page) + pfrag->offset; in esp6_output_head() 527 __skb_fill_page_desc(skb, nfrags, page, pfrag->offset, in esp6_output_head() 531 pfrag->offset = pfrag->offset + allocsize; in esp6_output_head() 619 struct page_frag *pfrag = &x->xfrag; in esp6_output_tail() local 624 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp6_output_tail() 631 page = pfrag->page; in esp6_output_tail() 634 __skb_fill_page_desc(skb, 0, page, pfrag->offset, skb->data_len); in esp6_output_tail() [all …]
|
A D | ip6_output.c | 1433 struct page_frag *pfrag, in __ip6_append_data() argument 1724 if (!sk_page_frag_refill(sk, pfrag)) in __ip6_append_data() 1727 if (!skb_can_coalesce(skb, i, pfrag->page, in __ip6_append_data() 1728 pfrag->offset)) { in __ip6_append_data() 1733 __skb_fill_page_desc(skb, i, pfrag->page, in __ip6_append_data() 1734 pfrag->offset, 0); in __ip6_append_data() 1736 get_page(pfrag->page); in __ip6_append_data() 1738 copy = min_t(int, copy, pfrag->size - pfrag->offset); in __ip6_append_data() 1740 page_address(pfrag->page) + pfrag->offset, in __ip6_append_data() 1744 pfrag->offset += copy; in __ip6_append_data()
|
/linux/net/ipv4/ |
A D | esp4.c | 469 struct page_frag *pfrag = &x->xfrag; in esp_output_head() local 477 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp_output_head() 482 page = pfrag->page; in esp_output_head() 485 tail = page_address(page) + pfrag->offset; in esp_output_head() 491 __skb_fill_page_desc(skb, nfrags, page, pfrag->offset, in esp_output_head() 495 pfrag->offset = pfrag->offset + allocsize; in esp_output_head() 583 struct page_frag *pfrag = &x->xfrag; in esp_output_tail() local 588 if (unlikely(!skb_page_frag_refill(allocsize, pfrag, GFP_ATOMIC))) { in esp_output_tail() 595 page = pfrag->page; in esp_output_tail() 598 __skb_fill_page_desc(skb, 0, page, pfrag->offset, skb->data_len); in esp_output_tail() [all …]
|
A D | ip_output.c | 947 struct page_frag *pfrag, in __ip_append_data() argument 1179 if (!sk_page_frag_refill(sk, pfrag)) in __ip_append_data() 1182 if (!skb_can_coalesce(skb, i, pfrag->page, in __ip_append_data() 1183 pfrag->offset)) { in __ip_append_data() 1188 __skb_fill_page_desc(skb, i, pfrag->page, in __ip_append_data() 1189 pfrag->offset, 0); in __ip_append_data() 1191 get_page(pfrag->page); in __ip_append_data() 1193 copy = min_t(int, copy, pfrag->size - pfrag->offset); in __ip_append_data() 1195 page_address(pfrag->page) + pfrag->offset, in __ip_append_data() 1199 pfrag->offset += copy; in __ip_append_data()
|
A D | tcp.c | 1306 struct page_frag *pfrag = sk_page_frag(sk); in tcp_sendmsg_locked() local 1308 if (!sk_page_frag_refill(sk, pfrag)) in tcp_sendmsg_locked() 1311 if (!skb_can_coalesce(skb, i, pfrag->page, in tcp_sendmsg_locked() 1312 pfrag->offset)) { in tcp_sendmsg_locked() 1320 copy = min_t(int, copy, pfrag->size - pfrag->offset); in tcp_sendmsg_locked() 1335 pfrag->page, in tcp_sendmsg_locked() 1336 pfrag->offset, in tcp_sendmsg_locked() 1345 skb_fill_page_desc(skb, i, pfrag->page, in tcp_sendmsg_locked() 1346 pfrag->offset, copy); in tcp_sendmsg_locked() 1347 page_ref_inc(pfrag->page); in tcp_sendmsg_locked() [all …]
|
/linux/drivers/vhost/ |
A D | net.c | 656 struct page_frag *pfrag, gfp_t gfp) in vhost_net_page_frag_refill() argument 658 if (pfrag->page) { in vhost_net_page_frag_refill() 659 if (pfrag->offset + sz <= pfrag->size) in vhost_net_page_frag_refill() 661 __page_frag_cache_drain(pfrag->page, net->refcnt_bias); in vhost_net_page_frag_refill() 664 pfrag->offset = 0; in vhost_net_page_frag_refill() 672 if (likely(pfrag->page)) { in vhost_net_page_frag_refill() 673 pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER; in vhost_net_page_frag_refill() 677 pfrag->page = alloc_page(gfp); in vhost_net_page_frag_refill() 678 if (likely(pfrag->page)) { in vhost_net_page_frag_refill() 679 pfrag->size = PAGE_SIZE; in vhost_net_page_frag_refill() [all …]
|
/linux/net/kcm/ |
A D | kcmsock.c | 957 struct page_frag *pfrag = sk_page_frag(sk); in kcm_sendmsg() local 959 if (!sk_page_frag_refill(sk, pfrag)) in kcm_sendmsg() 962 if (!skb_can_coalesce(skb, i, pfrag->page, in kcm_sendmsg() 963 pfrag->offset)) { in kcm_sendmsg() 984 pfrag->size - pfrag->offset); in kcm_sendmsg() 990 pfrag->page, in kcm_sendmsg() 991 pfrag->offset, in kcm_sendmsg() 1000 skb_fill_page_desc(skb, i, pfrag->page, in kcm_sendmsg() 1001 pfrag->offset, copy); in kcm_sendmsg() 1002 get_page(pfrag->page); in kcm_sendmsg() [all …]
|
/linux/net/core/ |
A D | skmsg.c | 29 struct page_frag *pfrag = sk_page_frag(sk); in sk_msg_alloc() local 38 if (!sk_page_frag_refill(sk, pfrag)) in sk_msg_alloc() 41 orig_offset = pfrag->offset; in sk_msg_alloc() 42 use = min_t(int, len, pfrag->size - orig_offset); in sk_msg_alloc() 51 sg_page(sge) == pfrag->page && in sk_msg_alloc() 62 sg_set_page(sge, pfrag->page, use, orig_offset); in sk_msg_alloc() 63 get_page(pfrag->page); in sk_msg_alloc() 69 pfrag->offset += use; in sk_msg_alloc()
|
A D | sock.c | 2691 if (pfrag->page) { in skb_page_frag_refill() 2692 if (page_ref_count(pfrag->page) == 1) { in skb_page_frag_refill() 2693 pfrag->offset = 0; in skb_page_frag_refill() 2696 if (pfrag->offset + sz <= pfrag->size) in skb_page_frag_refill() 2698 put_page(pfrag->page); in skb_page_frag_refill() 2701 pfrag->offset = 0; in skb_page_frag_refill() 2709 if (likely(pfrag->page)) { in skb_page_frag_refill() 2710 pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER; in skb_page_frag_refill() 2714 pfrag->page = alloc_page(gfp); in skb_page_frag_refill() 2715 if (likely(pfrag->page)) { in skb_page_frag_refill() [all …]
|
A D | skbuff.c | 2409 struct page_frag *pfrag = sk_page_frag(sk); in linear_to_page() local 2411 if (!sk_page_frag_refill(sk, pfrag)) in linear_to_page() 2414 *len = min_t(unsigned int, *len, pfrag->size - pfrag->offset); in linear_to_page() 2416 memcpy(page_address(pfrag->page) + pfrag->offset, in linear_to_page() 2418 *offset = pfrag->offset; in linear_to_page() 2419 pfrag->offset += *len; in linear_to_page() 2421 return pfrag->page; in linear_to_page()
|
/linux/net/mptcp/ |
A D | protocol.c | 960 const struct page_frag *pfrag, in mptcp_frag_can_collapse_to() argument 963 return df && pfrag->page == df->page && in mptcp_frag_can_collapse_to() 964 pfrag->size - pfrag->offset > 0 && in mptcp_frag_can_collapse_to() 1108 pfrag, sk->sk_allocation))) in mptcp_page_frag_refill() 1128 dfrag->page = pfrag->page; in mptcp_carve_data_frag() 1646 struct page_frag *pfrag; in mptcp_sendmsg() local 1668 pfrag = sk_page_frag(sk); in mptcp_sendmsg() 1690 if (!mptcp_page_frag_refill(sk, pfrag)) in mptcp_sendmsg() 1693 dfrag = mptcp_carve_data_frag(msk, pfrag, pfrag->offset); in mptcp_sendmsg() 1702 psize = pfrag->size - offset; in mptcp_sendmsg() [all …]
|
/linux/drivers/net/ethernet/mellanox/mlx4/ |
A D | en_tx.c | 603 void **pfrag) in is_inline() argument 614 *pfrag = ptr; in is_inline() 638 void **pfrag) in get_real_size() argument 665 shinfo, pfrag); in get_real_size()
|
/linux/fs/ceph/ |
A D | inode.c | 204 struct ceph_inode_frag *pfrag, int *found) in __ceph_choose_frag() argument 220 if (pfrag) in __ceph_choose_frag() 221 memcpy(pfrag, frag, sizeof(*pfrag)); in __ceph_choose_frag() 246 struct ceph_inode_frag *pfrag, int *found) in ceph_choose_frag() argument 250 ret = __ceph_choose_frag(ci, v, pfrag, found); in ceph_choose_frag()
|
A D | super.h | 684 struct ceph_inode_frag *pfrag,
|
/linux/drivers/scsi/be2iscsi/ |
A D | be_main.c | 2121 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() 3878 struct iscsi_sge *pfrag; in beiscsi_init_sgl_handle() local 3956 pfrag = mem_descr_sg->mem_array[idx].virtual_address; in beiscsi_init_sgl_handle() 3967 psgl_handle->pfrag = pfrag; in beiscsi_init_sgl_handle() 3968 AMAP_SET_BITS(struct amap_iscsi_sge, addr_hi, pfrag, 0); in beiscsi_init_sgl_handle() 3969 AMAP_SET_BITS(struct amap_iscsi_sge, addr_lo, pfrag, 0); in beiscsi_init_sgl_handle() 3970 pfrag += phba->params.num_sge_per_io; in beiscsi_init_sgl_handle()
|
A D | be_main.h | 213 struct iscsi_sge *pfrag; member
|
/linux/include/net/ |
A D | sock.h | 2467 bool sk_page_frag_refill(struct sock *sk, struct page_frag *pfrag);
|
/linux/include/linux/ |
A D | skbuff.h | 3225 bool skb_page_frag_refill(unsigned int sz, struct page_frag *pfrag, gfp_t prio);
|