如何在基于dpdk的应用程序中启用调试模式?

时间:2017-10-17 08:54:07

标签: c debugging logging network-programming dpdk

运行基于dpdk的应用程序时遇到一些错误。我发现在调用dpdk库提供的rte_eth_dev_configure()函数时会发生错误。错误代码是-22。但是,我希望应用程序显示更多调试信息,以便我可以快速关注错误部分。

我做了RTFM并修改了$RTE_SDK/build/.config。我将RTE_LIBRTE_ETHDEV_DEBUG变为y。但它没有用。 rte_vlog()函数在哪里放置日志消息?

你想帮助我吗?任何建议表示赞赏!

2 个答案:

答案 0 :(得分:0)

您还应该更改默认日志级别,否则所有调试消息都将在编译期间编译出来,即:

RTE_LOG_LEVEL=RTE_LOG_DEBUG
RTE_LIBRTE_ETHDEV_DEBUG=y

请同时查看EXTRA_CFLAGS。您可能还想添加调试符号并禁用优化,即:

make EXTRA_CFLAGS="-O0 -g" ...

答案 1 :(得分:0)

我将CONFIG_ RTE_LIBRTE_ETHDEV_DEBUG=y添加到${RTE_SDK}/config/defconfig_{RTE_TARGET}配置文件并重建目标。它有效。