本文主要是介绍dpdk 总线设备管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
背景
dpdk版本: 22.11
1、dpdk支持的bus类型注册
注册当前能够处理bus类型,放在全局 rte_bus_list 链表中。
struct rte_bus: A structure describing a generic bus,描述总线类型的结构
注册方法
void rte_bus_register(struct rte_bus *bus); //函数功能: 将支持的bus结构挂载到 rte_bus_list 链表上。
宏定义封装析构函数,在main函数执行前完成注册,目前注册的bus类型如下。
/*** Helper for Bus registration.* The constructor has higher priority than PMD constructors.*/
#define RTE_REGISTER_BUS(nm, bus) \
RTE_INIT_PRIO(businitfn_ ##nm, BUS) \
{\(bus).name = RTE_STR(nm);\rte_bus_register(&bus); \
}RTE_REGISTER_BUS(dsa, dsa_bus.bus)<
这篇关于dpdk 总线设备管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!