将 XDP 程序卸载到 Netronome Smart NIC 不受支持的功能

Offloaded XDP program to Netronome Smart NIC unsupported function

我正在尝试将一个小型 EBPF 程序卸载到使用映射的 NIC。我可以在哈希映射中查找元素,但是当我添加命令 bpf_map_update_elem 时,我在尝试加载时返回错误。

14: (85) call bpf_map_update_elem#2
[nfp] map_update: not supported by FW

driver我是运行:

$ ethtool -i $ETHNAME
driver: nfp
version: 5.15.0-27-generic
firmware-version: 0.0.3.5 0.31 bpf-2.0.6.124 ebpf
expansion-rom-version:
bus-info: 0000:06:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: yes
supports-priv-flags: no

根据https://www.netronome.com/media/documents/UG_Getting_Started_with_eBPF_Offload.pdf,应该支持这个功能。 有人找到解决方案了吗?

您 link 的文档指出:

Since Kernel 4.17, map updates are supported by our driver. As of this writing, our public firmware does not contain map update support from the datapath, but this is available on request.

您应该联系Netronome's customer support service获取支持地图更新的固件版本。

(我编写了本指南,可以确认,据我所知,带有地图更新的固件尚未公开发布。)