if (mbuf == NULL) { PMD_INIT_LOG(ERR, "RX mbuf alloc failed queue_id=%u", (unsigned) rxq->queue_id); return -ENOMEM; } rte_mbuf_refcnt_set(mbuf, 1); mbuf->next = NULL; mbuf->data_off = RTE_PKTMBUF_HEADROOM; mbuf->nb_segs = 1; mbuf->port = rxq->port_id; dma_addr ...
We read every piece of feedback, and take your input very seriously. Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Cancel Create saved search Sign in Sign up Reseting focus {...
>> we could see the EINVAL ( EINVAL - cache size provided is too large, or >> priv_size is not aligned ) return from that above API. >> We are seeing the issue only when we pass the Priv_size value of 64 >> bytes which is aligned to RTE_MBUF_PRIV_ALIGN(8 bytes). >> >> ...
inline void rte_mbuf_prefetch_part2(struct rte_mbuf *m) { #if RTE_CACHE_LINE_SIZE == 64 rte_prefetch0(&m->cacheline1); #else RTE_SET_USED(m); #endif } static inline uint16_t rte_pktmbuf_priv_size(struct rte_mempool *mp); /** * Get the IOVA address of the mbuf data ...
*/ -static inline void * __rte_experimental +__rte_experimental static inline void * rte_mbuf_to_priv(struct rte_mbuf *m) { return RTE_PTR_ADD(m, sizeof(struct rte_mbuf)); diff --git a/lib/librte_meter/rte_meter.h b/lib/librte_meter/rte_meter.h index 3e383d2..59f7b90 ...
(s, NB_MBUF, MBUF_SIZE, MEMPOOL_CACHE_SIZE, PKTMBUF_PRIV_SZ, rte_pktmbuf_pool_init, NULL, rte_pktmbuf_init, NULL, socketid, 0); if (!pktmbuf_pool[socketid]) { log_crit( "Cannot init mbuf pool on socket %d\n", socketid); return -ENOMEM; } } /* Setup the TX queu...
将mbuf 释放到 free_q 队列中 rte_kni 虚拟网络接口的发包函数 390 static int 391 kni_net_tx(struct sk_buff *skb, struct net_device *dev) 392 { 393 int len = 0; 394 unsigned ret; 395 struct kni_dev *kni = netdev_priv(dev); ...
Elixir Cross Referencer - source file of Dpdk (version v24.07). Browsed file: /lib/mbuf/rte_mbuf.h
rte_pktmbuf_pool_create_by_ops(constchar*name,unsignedintn,unsignedintcache_size,uint16_tpriv_size,uint16_tdata_room_size,intsocket_id,constchar*ops_name) rte_mempool创建流程大体如下图所示: rte_mempool创建流程 首先从memzone中申请一个空的mempool,并初始化此过程中的相关的成员。
We read every piece of feedback, and take your input very seriously. Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Cancel Create saved search Sign in Sign up Reseting focus {...