| /linux/net/core/ |
| H A D | devmem.c | 33 bool net_is_devmem_iov(struct net_iov *niov) in net_is_devmem_iov() argument 35 return niov->type == NET_IOV_DMABUF; in net_is_devmem_iov() 48 static dma_addr_t net_devmem_get_dma_addr(const struct net_iov *niov) in net_devmem_get_dma_addr() argument 52 owner = net_devmem_iov_to_chunk_owner(niov); in net_devmem_get_dma_addr() 54 ((dma_addr_t)net_iov_idx(niov) << PAGE_SHIFT); in net_devmem_get_dma_addr() 87 struct net_iov *niov; in net_devmem_alloc_dmabuf() local 98 niov = &owner->area.niovs[index]; in net_devmem_alloc_dmabuf() 100 niov->desc.pp_magic = 0; in net_devmem_alloc_dmabuf() 101 niov->desc.pp = NULL; in net_devmem_alloc_dmabuf() 102 atomic_long_set(&niov->desc.pp_ref_count, 0); in net_devmem_alloc_dmabuf() [all …]
|
| H A D | datagram.c | 713 struct net_iov *niov; in zerocopy_fill_skb_from_devmem() local 728 niov = net_devmem_get_niov_at(binding, virt_addr, &off, &size); in zerocopy_fill_skb_from_devmem() 729 if (!niov) in zerocopy_fill_skb_from_devmem() 735 get_netmem(net_iov_to_netmem(niov)); in zerocopy_fill_skb_from_devmem() 736 skb_add_rx_frag_netmem(skb, i, net_iov_to_netmem(niov), off, in zerocopy_fill_skb_from_devmem()
|
| H A D | page_pool.c | 1328 bool net_mp_niov_set_dma_addr(struct net_iov *niov, dma_addr_t addr) 1330 return page_pool_set_dma_addr_netmem(net_iov_to_netmem(niov), addr); 1333 /* Associate a niov with a page pool. Should follow with a matching in net_mp_niov_set_page_pool() 1336 void net_mp_niov_set_page_pool(struct page_pool *pool, struct net_iov *niov) in net_mp_niov_set_page_pool() 1338 netmem_ref netmem = net_iov_to_netmem(niov); in net_mp_niov_set_page_pool() 1346 /* Disassociate a niov from a page pool. Should only be used in the in net_mp_niov_clear_page_pool() 1349 void net_mp_niov_clear_page_pool(struct net_iov *niov) in net_mp_niov_clear_page_pool() 1351 netmem_ref netmem = net_iov_to_netmem(niov); 1324 net_mp_niov_set_dma_addr(struct net_iov * niov,dma_addr_t addr) net_mp_niov_set_dma_addr() argument 1332 net_mp_niov_set_page_pool(struct page_pool * pool,struct net_iov * niov) net_mp_niov_set_page_pool() argument 1345 net_mp_niov_clear_page_pool(struct net_iov * niov) net_mp_niov_clear_page_pool() argument
|
| H A D | skbuff.c | 7394 struct net_iov *niov; in get_netmem() local 7397 niov = netmem_to_net_iov(netmem); in get_netmem() 7398 if (net_is_devmem_iov(niov)) in get_netmem() 7408 struct net_iov *niov; in put_netmem() local 7411 niov = netmem_to_net_iov(netmem); in put_netmem() 7412 if (net_is_devmem_iov(niov)) in put_netmem()
|
| H A D | dev.c | 3960 struct net_iov *niov; in validate_xmit_unreadable_skb() local 3971 niov = netmem_to_net_iov(skb_frag_netmem(&shinfo->frags[0])); in validate_xmit_unreadable_skb() 3972 if (net_is_devmem_iov(niov) && in validate_xmit_unreadable_skb() 3973 net_devmem_iov_binding(niov)->dev != dev) in validate_xmit_unreadable_skb()
|
| /linux/io_uring/ |
| H A D | zcrx.c | 40 static inline struct io_zcrx_area *io_zcrx_iov_to_area(const struct net_iov *niov) in io_zcrx_iov_to_area() argument 42 struct net_iov_area *owner = net_iov_owner(niov); in io_zcrx_iov_to_area() 47 static inline struct page *io_zcrx_iov_page(const struct net_iov *niov) in io_zcrx_iov_page() argument 49 struct io_zcrx_area *area = io_zcrx_iov_to_area(niov); in io_zcrx_iov_page() 55 return area->mem.pages[net_iov_idx(niov) << niov_pages_shift]; in io_zcrx_iov_page() 74 struct net_iov *niov = &area->nia.niovs[niov_idx]; in io_populate_area_dma() local 76 if (net_mp_niov_set_dma_addr(niov, dma)) in io_populate_area_dma() 296 struct net_iov *niov) in io_zcrx_sync_for_device() argument 307 dma_addr = page_pool_get_dma_addr_netmem(net_iov_to_netmem(niov)); in io_zcrx_sync_for_device() 326 static inline atomic_t *io_get_user_counter(struct net_iov *niov) in io_get_user_counter() argument [all …]
|
| /linux/include/net/ |
| H A D | netmem.h | 101 * accessed via netmem_desc e.g. niov->desc.pp instead 102 * of niov->pp. 130 * accessed via netmem_desc e.g. niov->desc.pp instead of niov->pp. 146 static inline struct net_iov_area *net_iov_owner(const struct net_iov *niov) 148 return niov->owner; 151 static inline unsigned int net_iov_idx(const struct net_iov *niov) in net_iov_owner() 153 return niov - net_iov_owner(niov)->niovs; in net_iov_owner() 207 static inline netmem_ref net_iov_to_netmem(struct net_iov *niov) in netmem_to_net_iov() 150 net_iov_owner(const struct net_iov * niov) net_iov_owner() argument 155 net_iov_idx(const struct net_iov * niov) net_iov_idx() argument 211 net_iov_to_netmem(struct net_iov * niov) net_iov_to_netmem() argument [all...] |
| /linux/include/net/page_pool/ |
| H A D | memory_provider.h | 22 bool net_mp_niov_set_dma_addr(struct net_iov *niov, dma_addr_t addr); 23 void net_mp_niov_set_page_pool(struct page_pool *pool, struct net_iov *niov); 24 void net_mp_niov_clear_page_pool(struct net_iov *niov);
|
| /linux/drivers/target/iscsi/ |
| H A D | iscsi_target.c | 503 u32 niov = 0, tx_size = ISCSI_HDR_LEN; in iscsit_xmit_nondatain_pdu() local 507 iov[niov].iov_base = cmd->pdu; in iscsit_xmit_nondatain_pdu() 508 iov[niov++].iov_len = ISCSI_HDR_LEN; in iscsit_xmit_nondatain_pdu() 525 iov[niov].iov_base = (void *)data_buf; in iscsit_xmit_nondatain_pdu() 526 iov[niov++].iov_len = data_buf_len; in iscsit_xmit_nondatain_pdu() 530 iov[niov].iov_base = &cmd->pad_bytes; in iscsit_xmit_nondatain_pdu() 531 iov[niov++].iov_len = padding; in iscsit_xmit_nondatain_pdu() 541 iov[niov].iov_base = &cmd->data_crc; in iscsit_xmit_nondatain_pdu() 542 iov[niov++].iov_len = ISCSI_CRC_LEN; in iscsit_xmit_nondatain_pdu() 550 cmd->iov_misc_count = niov; in iscsit_xmit_nondatain_pdu() [all …]
|
| /linux/fs/smb/server/ |
| H A D | connection.h | 134 int (*writev)(struct ksmbd_transport *t, struct kvec *iovs, int niov,
|
| /linux/net/ipv4/ |
| H A D | tcp.c | 2537 struct net_iov *niov; in tcp_recvmsg_dmabuf() 2554 niov = skb_frag_net_iov(frag); in tcp_recvmsg_dmabuf() 2555 if (!net_is_devmem_iov(niov)) { in tcp_recvmsg_dmabuf() 2566 frag_offset = net_iov_virtual_addr(niov) + in tcp_recvmsg_dmabuf() 2578 dmabuf_cmsg.dmabuf_id = net_devmem_iov_binding_id(niov); in tcp_recvmsg_dmabuf() 2590 atomic_long_inc(&niov->desc.pp_ref_count); in tcp_recvmsg_dmabuf() 2536 struct net_iov *niov; tcp_recvmsg_dmabuf() local
|