DPDK内存池使用注意事项1 -- 重复释放问题

上篇文章DPDK抓包工具dpdk-dumpcap的使用中讲到了dpdk-dumpcap抓包工具的用法,今天我们来看一下DPDK的内存池。

DPDK提供了内存池的接口,可以很方便地让我们进行内存节点的管理分配,但是如果使用不当,可能会造成很隐蔽的问题。

下面讲到的是DPDK内存池节点重复释放导致的问题。

       主要测试代码如下:

void dpdk_mempool_test()
{
    int rc = -1;
    //申请两个节点,10个字节大小的内存池
    struct rte_mempool *pool_id = (void *)rte_mempool_create("pool_test", 2, 10, 0, 0, NULL, NULL, NULL, NULL,
                rte_socket_id(), MEMPOOL_F_NO_IOVA_CONTIG|MEMPOOL_F_SC_GET|MEMPOOL_F_SP_PUT);

    void* mem1 = NULL;
    rc = rte_mempool_get((struct rte_mempool 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值