Error Loading BPF program #359
Comments
That's correct, you can't use 128 bit wide fields in eBPF code. Should you need that, I think you will need to model it using 4 32 bit-wide fields. |
Hi, thanks for the quick reply! |
@sebastiaoamaro I don't believe they are permitted either. The best way would be to test. |
I am gonna test this when I have the time I think it is interesting to know. |
I think this depends on the kernel version. I've certainly used u128 in maps when dealing with IPv6 addresses. This patch set also suggests that support for 128 bit integers was added some time ago: https://www.spinics.net/lists/netdev/msg544476.html. For reference, I'm using a Kernel version 5.19 and have also performed some testing on 5.10. Hope this helps. Cheers, |
Hi,
I am trying to load this BPF program, however, I get the error:
thread 'tokio-runtime-worker' panicked at 'error loading BPF program: LoadError("measure_tcp_lifetime", BPF)',
In RedBPF as far as I am aware tracks to this block
redbpf/redbpf/src/lib.rs
Line 727 in 5533198
This is the code in the program
I previously managed to get this program correctly loaded when I used u32 instead of u128, however, I need to change it now.
Is there anything related to u128 that the kernel does not allow?
Thank you in advance.
The text was updated successfully, but these errors were encountered: