Home
last modified time | relevance | path

Searched refs:netmem (Results 1 – 15 of 15) sorted by relevance

/linux/include/net/
A Dnetmem.h80 if (WARN_ON_ONCE(netmem_is_net_iov(netmem))) in netmem_to_page()
83 return (__force struct page *)netmem; in netmem_to_page()
88 if (netmem_is_net_iov(netmem)) in netmem_to_net_iov()
111 if (netmem_is_net_iov(netmem)) in netmem_ref_count()
119 if (netmem_is_net_iov(netmem)) in netmem_pfn_trace()
122 return page_to_pfn(netmem_to_page(netmem)); in netmem_pfn_trace()
132 return __netmem_clear_lsb(netmem)->pp; in netmem_get_pp()
146 if (netmem_is_net_iov(netmem)) in netmem_is_pref_nid()
155 if (netmem_is_net_iov(netmem)) in netmem_compound_head()
156 return netmem; in netmem_compound_head()
[all …]
/linux/net/core/
A Dpage_pool.c408 netmem = 0; in page_pool_refill_alloc_cache()
419 return netmem; in page_pool_refill_alloc_cache()
436 return netmem; in __page_pool_get_cached()
567 netmem = 0; in __page_pool_alloc_pages_slow()
571 return netmem; in __page_pool_alloc_pages_slow()
583 if (netmem) in page_pool_alloc_netmem()
591 return netmem; in page_pool_alloc_netmem()
824 netmem = in page_pool_put_unrefed_netmem()
826 if (netmem && !page_pool_recycle_in_ring(pool, netmem)) { in page_pool_put_unrefed_netmem()
875 if (netmem) in page_pool_put_page_bulk()
[all …]
A Dnetmem_priv.h6 static inline unsigned long netmem_get_pp_magic(netmem_ref netmem) in netmem_get_pp_magic() argument
8 return __netmem_clear_lsb(netmem)->pp_magic; in netmem_get_pp_magic()
11 static inline void netmem_or_pp_magic(netmem_ref netmem, unsigned long pp_magic) in netmem_or_pp_magic() argument
13 __netmem_clear_lsb(netmem)->pp_magic |= pp_magic; in netmem_or_pp_magic()
16 static inline void netmem_clear_pp_magic(netmem_ref netmem) in netmem_clear_pp_magic() argument
18 __netmem_clear_lsb(netmem)->pp_magic = 0; in netmem_clear_pp_magic()
21 static inline void netmem_set_pp(netmem_ref netmem, struct page_pool *pool) in netmem_set_pp() argument
23 __netmem_clear_lsb(netmem)->pp = pool; in netmem_set_pp()
26 static inline void netmem_set_dma_addr(netmem_ref netmem, in netmem_set_dma_addr() argument
29 __netmem_clear_lsb(netmem)->dma_addr = dma_addr; in netmem_set_dma_addr()
A Dpage_pool_priv.h17 page_pool_set_dma_addr_netmem(netmem_ref netmem, dma_addr_t addr) in page_pool_set_dma_addr_netmem() argument
20 netmem_set_dma_addr(netmem, addr >> PAGE_SHIFT); in page_pool_set_dma_addr_netmem()
25 return addr != (dma_addr_t)netmem_get_dma_addr(netmem) in page_pool_set_dma_addr_netmem()
29 netmem_set_dma_addr(netmem, addr); in page_pool_set_dma_addr_netmem()
39 void page_pool_set_pp_info(struct page_pool *pool, netmem_ref netmem);
40 void page_pool_clear_pp_info(netmem_ref netmem);
45 netmem_ref netmem) in page_pool_set_pp_info() argument
48 static inline void page_pool_clear_pp_info(netmem_ref netmem) in page_pool_clear_pp_info() argument
A Ddevmem.c351 netmem_ref netmem; in mp_dmabuf_devmem_alloc_netmems() local
357 netmem = net_iov_to_netmem(niov); in mp_dmabuf_devmem_alloc_netmems()
359 page_pool_set_pp_info(pool, netmem); in mp_dmabuf_devmem_alloc_netmems()
362 trace_page_pool_state_hold(pool, netmem, pool->pages_state_hold_cnt); in mp_dmabuf_devmem_alloc_netmems()
363 return netmem; in mp_dmabuf_devmem_alloc_netmems()
373 bool mp_dmabuf_devmem_release_page(struct page_pool *pool, netmem_ref netmem) in mp_dmabuf_devmem_release_page() argument
375 long refcount = atomic_long_read(netmem_get_pp_ref_count_ref(netmem)); in mp_dmabuf_devmem_release_page()
377 if (WARN_ON_ONCE(!netmem_is_net_iov(netmem))) in mp_dmabuf_devmem_release_page()
383 page_pool_clear_pp_info(netmem); in mp_dmabuf_devmem_release_page()
385 net_devmem_free_dmabuf(netmem_to_net_iov(netmem)); in mp_dmabuf_devmem_release_page()
A Dmp_dmabuf_devmem.h20 bool mp_dmabuf_devmem_release_page(struct page_pool *pool, netmem_ref netmem);
38 mp_dmabuf_devmem_release_page(struct page_pool *pool, netmem_ref netmem) in mp_dmabuf_devmem_release_page() argument
A Dskbuff.c118 offsetof(skb_frag_t, netmem));
120 sizeof_field(skb_frag_t, netmem));
879 void skb_add_rx_frag_netmem(struct sk_buff *skb, int i, netmem_ref netmem, in skb_add_rx_frag_netmem() argument
884 skb_fill_netmem_desc(skb, i, netmem, off, size); in skb_add_rx_frag_netmem()
924 static bool is_pp_netmem(netmem_ref netmem) in is_pp_netmem() argument
926 return (netmem_get_pp_magic(netmem) & ~0x3UL) == PP_SIGNATURE; in is_pp_netmem()
1022 bool napi_pp_put_page(netmem_ref netmem) in napi_pp_put_page() argument
1024 netmem = netmem_compound_head(netmem); in napi_pp_put_page()
1033 if (unlikely(!is_pp_netmem(netmem))) in napi_pp_put_page()
1036 page_pool_put_full_netmem(netmem_get_pp(netmem), netmem, false); in napi_pp_put_page()
[all …]
A Dsock.c1094 netmem_ref netmem = (__force netmem_ref)__xa_erase( in sock_devmem_dontneed() local
1097 if (!netmem || WARN_ON_ONCE(!netmem_is_net_iov(netmem))) in sock_devmem_dontneed()
1100 netmems[netmem_num++] = netmem; in sock_devmem_dontneed()
/linux/include/trace/events/
A Dpage_pool.h45 netmem_ref netmem, u32 release),
47 TP_ARGS(pool, netmem, release),
51 __field(unsigned long, netmem)
58 __entry->netmem = (__force unsigned long)netmem;
60 __entry->pfn = netmem_pfn_trace(netmem);
64 __entry->pool, (void *)__entry->netmem,
71 netmem_ref netmem, u32 hold),
73 TP_ARGS(pool, netmem, hold),
77 __field(unsigned long, netmem)
84 __entry->netmem = (__force unsigned long)netmem;
[all …]
/linux/include/net/page_pool/
A Dhelpers.h219 atomic_long_set(netmem_get_pp_ref_count_ref(netmem), nr); in page_pool_fragment_netmem()
247 atomic_long_t *pp_ref_count = netmem_get_pp_ref_count_ref(netmem); in page_pool_unref_netmem()
295 static inline void page_pool_ref_netmem(netmem_ref netmem) in page_pool_ref_netmem() argument
297 atomic_long_inc(&netmem_to_page(netmem)->pp_ref_count); in page_pool_ref_netmem()
305 static inline bool page_pool_is_last_ref(netmem_ref netmem) in page_pool_is_last_ref() argument
308 return page_pool_unref_netmem(netmem, 1) == 0; in page_pool_is_last_ref()
312 netmem_ref netmem, in page_pool_put_netmem() argument
320 if (!page_pool_is_last_ref(netmem)) in page_pool_put_netmem()
350 netmem_ref netmem, in page_pool_put_full_netmem() argument
353 page_pool_put_netmem(pool, netmem, -1, allow_direct); in page_pool_put_full_netmem()
[all …]
A Dtypes.h90 void (*init_callback)(netmem_ref netmem, void *arg);
281 void page_pool_put_unrefed_netmem(struct page_pool *pool, netmem_ref netmem,
/linux/include/linux/
A Dskbuff_ref.h35 bool napi_pp_put_page(netmem_ref netmem);
37 static inline void skb_page_unref(netmem_ref netmem, bool recycle) in skb_page_unref() argument
40 if (recycle && napi_pp_put_page(netmem)) in skb_page_unref()
43 put_page(netmem_to_page(netmem)); in skb_page_unref()
A Dskbuff.h362 netmem_ref netmem; member
2491 netmem_ref netmem, int off, in skb_frag_fill_netmem_desc() argument
2494 frag->netmem = netmem; in skb_frag_fill_netmem_desc()
2507 int i, netmem_ref netmem, in __skb_fill_netmem_desc_noacc() argument
2555 if (netmem_is_net_iov(netmem)) { in __skb_fill_netmem_desc()
2560 page = netmem_to_page(netmem); in __skb_fill_netmem_desc()
3545 return netmem_is_net_iov(frag->netmem); in skb_frag_is_net_iov()
3560 return netmem_to_net_iov(frag->netmem); in skb_frag_net_iov()
3575 return netmem_to_page(frag->netmem); in skb_frag_page()
3586 return frag->netmem; in skb_frag_netmem()
[all …]
/linux/net/bpf/
A Dtest_run.c130 static void xdp_test_run_init_page(netmem_ref netmem, void *arg) in xdp_test_run_init_page() argument
133 phys_to_virt(page_to_phys(netmem_to_page(netmem))); in xdp_test_run_init_page()
/linux/net/ipv4/
A Dtcp_ipv4.c2520 void *netmem; local
2522 xa_for_each(&sk->sk_user_frags, index, netmem)
2523 WARN_ON_ONCE(!napi_pp_put_page((__force netmem_ref)netmem));

Completed in 56 milliseconds