gpt4 book ai didi

c - 具有高日志级别的 dpdk mbuf 和 mempool 消息

转载 作者:太空宇宙 更新时间:2023-11-04 10:35:43 26 4
gpt4 key购买 nike

是否有任何线索,如何在 DPDK 中启用所有 mempool、mbuf 调试。我正在使用 DPDK 2.2.0.,我发现了一些 answers这对这个版本没有太大帮助。

最佳答案

您可以查看 DPDK 源代码 rte_log.h,以查看 RTE_LOG 的定义。

你可以

1) define RTE_LOG_LEVEL in Makefile, or
2) define RTE_LOG_LEVEL in rte_log.h before RTE_LOG, e.g.
#define RTE_LOG_LEVEL 8

那么所有的底层调试信息都会被记录到日志文件中,如果你愿意,你也可以将这个宏重新定义为打印到控制台。

在DPDK中,日志也是由rte_logs.type控制的,需要查看这个值,每个模块一个位,参见rte_log.h RTE_LOGTYPE_XXX。

如果上面的方法不行,试试下面的方法

#define RTE_LOG_LEVEL   8
#define RTE_LOG(l, t, ...) \
(void)((RTE_LOG_ ## l <= RTE_LOG_LEVEL) ? \
rte_log(RTE_LOG_ ## l, \
RTE_LOGTYPE_ ## t, # t ": " __VA_ARGS__) : \
0)

在 eal_common_log.c 中

int rte_vlog(uint32_t level, uint32_t logtype, const char *format, va_list ap)
{
ret = printf(format, ap);
return ret;
}

重新编译整个DPDK,查看是否有日志产生。如果这个工作,然后 chnage rte_vlog 回来,只需检查上面提到的输出文件名和全局变量。

关于c - 具有高日志级别的 dpdk mbuf 和 mempool 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37651600/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com