Project

General

Profile

Actions

Bug #6365

closed

Suricata AF_XDP not using libxdp XDP dispatcher and can't co-exist with another XDP program

Added by Vincent Li about 1 year ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Affected Versions:
Effort:
Difficulty:
Label:

Description

Hi,

While testing suricata AF_XDP, I noticed I could not attach another XDP program to the interface that has AF_XDP program attached

for example, AF_XDP attached interface

root@r220:~# xdp-loader status
CURRENT XDP PROGRAM STATUS:

Interface        Prio  Program name      Mode     ID   Tag               Chain actions
--------------------------------------------------------------------------------------
lo                     <No XDP program loaded!>
enp1s0f0               <No XDP program loaded!>
enp1s0f1               <No XDP program loaded!>
eno1                   <No XDP program loaded!>
eno2                                     skb      38   03b13f331978c78c 

then if I use xdp-loader to attach another XDP program to eno2 interface, I got

#xdp-loader load eno2 -m skb ./xdp_pass.o

libxdp: Generating multi-prog dispatcher for 1 programs
libxdp: Existing program is not using a dispatcher, can't replace; unload first
Couldn't attach XDP program on iface 'eno2': Device or resource busy(-16)

it appears to me AF_XDP program should be able to co-exist with another XDP program if they are using libxdp XDP dispatcher.
it looks suricata AF_XDP is not setup to use dispatcher.

Actions

Also available in: Atom PDF