完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我遇到了一些奇怪的行为,我认为这可能是由 DPAA2 DPDK 轮询模式驱动程序引起的。我有一个 DPDK 22.11.1 LTS 应用程序(在 LX2160A SoC 上),它执行以下操作:
1. 从输入队列接收 mbuf 队列,并处理每个 mbuf: 2. 使用 rte_pktmbuf_alloc 为 mbuf 分配一个尾部。此分配发生在用于分配接收到的数据包的同一池中。 3. 使用 rte_pktmbuf_chain(rx, trailer) 将预告片链接到接收到的 mbuf 4. 通过第二个 dpaa2 端口传输 mbuf 链。 我看到的问题是对 rte_pktmbuf_alloc 的调用失败(在处理了几千个数据包之后)并出现恐慌: “PANIC in __rte_mbuf_raw_sanity_check():” assert “m->next == ((void *)0)” 失败。 此健全性检查是检查从池中分配的 mbuf 的一致性(包括它们是否将“下一个”指针设置为 NULL,这是应该的)。当以前的操作使用 rte_pktmbuf_chain API 创建 mbuf 链时,我只看到这种恐慌行为。 我认为问题是 PMD 将链接的 mbuf 释放回池(传输后),而没有先将下一个字段设置为 NULL。当使用调用 __rte_mbuf_raw_sanity_check 的 API 从池中进行分配时,这会导致恐慌。与熟悉 DPDK PMD 代码的人确认这一点将非常有帮助)。 如果 NXP 的某个人可以帮助解决这个问题,我可以寻找一个可重现的例子。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1932个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36420 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4860 浏览 1 评论
6107 浏览 1 评论
6817 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4248 浏览 0 评论
645浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
641浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
643浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
729浏览 2评论
844浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 00:42 , Processed in 1.376674 second(s), Total 44, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号