【HeadFirst OFED】OFED中ib_device_attr能力信息如何在用户态查看?如何查看网卡是否支持UMR修改mkey的entry size?( ibv_devinfo -v)

背景

本文介绍Mellanox驱动中管理ib_device的属性中关于设备能力的标签在用户态如何获取,以及UMR修改Mkey页大小的能力?

细节

先看:ib_verbs.h中的struct ib_device_attr ib设备属性关于设备能力flags的关系。
在这里插入图片描述
再看内存扩展管理的能力标记:IB_DEVICE_MEM_MGT_EXTENSIONS
再看驱动在query的时候如何根据硬件能力进行打标:

# 在ib_query_device接口能力对外提供
if (!MLX5_CAP_GEN(dev->mdev, umr_modify_entity_size_disabled)) //#tag_cap_UMESD: 
	props->device_cap_flags |= IB_DEVICE_MEM_MGT_EXTENSIONS;

实操查看

ibv_devinfo -v可以查看
在这里插入图片描述
这里显示了MEM_MGT_EXTENSIONS,表示该网卡支持该能力。
ibv_devinfo是通过前面代码介绍的,使用ib_query_device,然后读取硬件接口获取的。

总结

  1. ibv_devinfo 能够从硬件上读取到相关能力,并且是提供到用户态的verbs接口上
  2. ibv相关的工具可能每次回操作读取硬件fw的信息
  3. 可以利用driver提供硬件能力读取接口封装后提供自定义工具。类似ibv_devinfo功能
  4. ib_device_attr中的cap_flags存储了硬件能力,通过HCA Device Capabilities相关硬件接口或寄存器提供
  5. 查看硬件是否支持Mkey的page resize,可以通过ibv_devinfo的MEM_MGT_EXTENSIONS查看
  6. 所谓的Mkey的页大小是指(log_entity_size)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值