net/tap: eBPF failed to load BPF section and failed to create flows for TAP device

Stephen Hemminger stephen at networkplumber.org
Mon Oct 9 17:14:40 CEST 2023


On Mon, 9 Oct 2023 07:04:49 +0000
Kouilakonda Anudattu <kouilakonda.anudattu at oracle.com> wrote:

> I'm adding some additional details to provide more context. I'm encountering this issue on Azure/Hyper-V platform with the existing DPDK-22.11.1 tap_bpf_insns.h byte-code.
> 
> 
> Regards,
> Anudattu.
> 
> From: Kouilakonda Anudattu <kouilakonda.anudattu at oracle.com>
> Sent: Monday, October 9, 2023 9:48 AM
> To: users at dpdk.org
> Subject: [External] : net/tap: eBPF failed to load BPF section and failed to create flows for TAP device
> 
> Hi All,
> 
> 
> With the latest Oracle EL9 with DPDK 22.11.1 version, I modified the RSS eBPF C program and generated the structure of a C array in the 'tap_bpf_insns.h' file.
> This array is in eBPF bytecode instructions format. However, even with new bytecode eBPF failed to load TAP PMD with the following error:
> 
> rss_add_actions(): Failed to load BPF section 'l3_l4' (7): Argument list too long.
> net_failsafe: Failed to create a flow on sub_device 1."
> 
> 
> Currently we are using below kernel:
> 5.15.0 #9 SMP PREEMPT
> x86_64 GNU/Linux
> 
> 
> How to resolve these errors ?

You need to debug the TAP device with either gdb or adding printfs.
Did you see the modified build instructions?

https://patchwork.dpdk.org/project/dpdk/patch/20230722163259.4304-1-stephen@networkplumber.org/




More information about the users mailing list