首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DPDK突然停止工作,出现错误'EAL: No available 1048576 kB hugepages reported‘

DPDK突然停止工作,出现错误'EAL: No available 1048576 kB hugepages reported‘
EN

Stack Overflow用户
提问于 2021-02-20 04:35:31
回答 1查看 745关注 0票数 0

我在我的ubuntu服务器18.04TLS上安装了DPDK,内核为5.4.82,一切都在dpdk_testpmd上运行良好,直到从内核5.9往返升级/降级。即使在使用hugeadm创建大页面之后,它也会突然停止工作,并出现错误'EAL: No available 1048576 kB hugepages reported'。在/proc/meminfo中,HugePage_Free * HugePageSize为1724416 kB,超过1048575 kB。

DPDK不能看到这些页面有什么原因吗?

/usr/bin/hugeadm --pool-pages-min默认值:2G -vvv

代码语言:javascript
复制
hugeadm:DEBUG: HUGETLB_VERBOSE='5'
hugeadm:INFO: page_size<DEFAULT> adjust<2G> counter<0>
hugeadm:DEBUG: Working with page_size of 2097152
hugeadm:DEBUG: Returning page count of 1024
hugeadm:INFO: 1024, 1024 -> 1024, 1024
hugeadm:INFO: setting HUGEPAGES_TOTAL to 1024

cat /proc/meminfo | grep -i海量

代码语言:javascript
复制
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
FileHugePages:         0 kB
HugePages_Total:    1024
HugePages_Free:      842
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:         2097152 kB

./dpdk testpmd-total-num-mbufs=131072

代码语言:javascript
复制
EAL: Detected 40 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: Detected static linkage of DPDK
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: No available 1048576 kB hugepages reported
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: DPDK is running on a NUMA system, but is compiled without NUMA support.
EAL: This will have adverse consequences for performance and usability.
EAL: Please use --legacy-mem option, or recompile with NUMA support.
..... Removed text about PCIe device probe here .....
EAL: No legacy callbacks, legacy socket not created
testpmd: create a new mbuf pool <mb_pool_0>: n=131072, size=2176, socket=0
testpmd: preferred mempool ops selected: ring_mp_mc
testpmd: create a new mbuf pool <mb_pool_1>: n=131072, size=2176, socket=1
testpmd: preferred mempool ops selected: ring_mp_mc
EAL: Error - exiting with code: 1
  Cause: Creation of mbuf pool for socket 1 failed: Cannot allocate memory
EN

回答 1

Stack Overflow用户

发布于 2021-02-20 11:51:56

我发现了问题所在。系统缺少libnuma-dev,可能是在我上次更新内核时被错误地删除的。在使用mesonninja重新安装libnuma-dev并重新编译DPDK之后,一切都恢复正常。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66284658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档