xdp_iphash_to_cpu_cmdline: Error loading BTF: Invalid argument(22)
"Ethy H. Brito" <[email protected]>
| Newsgroups | org.kernel.vger.xdp-newbies |
|---|---|
| Organization | InterNexo Ltda. |
| Message-ID | <20210622172216.79c6b3f2@babalu> |
Hi
Runing "# ./xdp_iphash_to_cpu --dev eth1 --all-cpus --wan" returns 2 loading errors:
----------------------8<----------------------------------
libbpf: Error loading BTF: Invalid argument(22)
libbpf: magic: 0xeb9f
version: 1
flags: 0x0
hdr_len: 24
type_off: 0
type_len: 492
str_off: 492
str_len: 1724
btf_total_size: 2240
[1] PTR (anon) type_id=2
[2] STRUCT xdp_md size=20 vlen=5
data type_id=3 bits_offset=0
data_end type_id=3 bits_offset=32
data_meta type_id=3 bits_offset=64
ingress_ifindex type_id=3 bits_offset=96
rx_queue_index type_id=3 bits_offset=128
[3] TYPEDEF __u32 type_id=4
[4] INT unsigned int size=4 bits_offset=0 nr_bits=32 encoding=(none)
[5] FUNC_PROTO (anon) return=6 args=(1 ctx)
[6] INT int size=4 bits_offset=0 nr_bits=32 encoding=SIGNED
[7] FUNC xdp_program type_id=5 vlen != 0
libbpf: Error loading ELF section .BTF: -22. Ignored and continue.
TC workaround for mapname: map_ifindex_type map_fd:5
Added CPU:0 queue_size:192
Added CPU:1 queue_size:192
Added CPU:2 queue_size:192
Added CPU:3 queue_size:192
Added CPU:4 queue_size:192
Added CPU:5 queue_size:192
Added CPU:6 queue_size:192
Added CPU:7 queue_size:192
Added CPU:8 queue_size:192
Added CPU:9 queue_size:192
Added CPU:10 queue_size:192
Added CPU:11 queue_size:192
Added CPU:12 queue_size:192
Added CPU:13 queue_size:192
Added CPU:14 queue_size:192
Added CPU:15 queue_size:192
Documentation:
XDP: Lookup IPv4 and redirect to CPU hash
This program loads the XDP eBPF program into the kernel.
Use the cmdline tool for add/removing dest IPs to the hash
- Attached to device:eth1 (ifindex:4) prog_id:73
----------------------------------8<-------------------------------
Since the XDP program was correctly listed by "bpftool net", I continued an added just ONE ip
# ./xdp_iphash_to_cpu_cmdline --add --ip 1.2.3.4 --classid 1:1234 --cpu 1
key: 0x4030201
WARN: Looks like map_txq_config --base-setup is missing
WARN: Fixing, doing map_txq_config --base-setup
iphash_modify() IP:1.2.3.4 key:0x4030201 TC-handle:0x11234
listed the map
# ./xdp_iphash_to_cpu_cmdline --list
{
"1.2.3.4" : { "cpu" : 1, "tc_maj" : "1" , "tc_min" : "1234" }}
And right after I tried to remove the program from XDP:
# ./xdp_iphash_to_cpu --dev eth1 --remove
Removing XDP program on ifindex:4 device:eth1
ERR: Clear ifindex type failed
INFO: not cleanup pinned map file:/sys/fs/bpf/tc/globals/map_ip_hash (use 'rm')
All seems to be rigth despite the errors.
Are all these errors and warnings serious problems? Should I worry?
Hints??
Regards
Ethy