27e1ca2525
Introduce a test that is supposed to verify the persistence of BPF resources based on underlying bpf_link usage. Test will: 1) create and bind two sockets on queue ids 0 and 1 2) run a traffic on queue ids 0 3) remove xsk sockets from queue 0 on both veth interfaces 4) run a traffic on queues ids 1 Running traffic successfully on qids 1 means that BPF resources were not removed on step 3). In order to make it work, change the command that creates veth pair to have the 4 queue pairs by default. Introduce the arrays of xsks and umems to ifobject struct but keep a pointers to single entities, so rest of the logic around Rx/Tx can be kept as-is. For umem handling, double the size of mmapped space and split that between the two sockets. Rename also bidi_pass to a variable 'second_step' of a boolean type as it's now used also for the test that is introduced here and it doesn't have anything in common with bi-directional testing. Drop opt_queue command line argument as it wasn't working before anyway. Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20210329224316.17793-15-maciej.fijalkowski@intel.com |
||
---|---|---|
.. | ||
arm64 | ||
bpf | ||
breakpoints | ||
capabilities | ||
cgroup | ||
clone3 | ||
core | ||
cpu-hotplug | ||
cpufreq | ||
dma | ||
dmabuf-heaps | ||
drivers | ||
efivarfs | ||
exec | ||
filesystems | ||
firmware | ||
fpu | ||
ftrace | ||
futex | ||
gpio | ||
ia64 | ||
intel_pstate | ||
ipc | ||
ir | ||
kcmp | ||
kexec | ||
kmod | ||
kselftest | ||
kvm | ||
lib | ||
livepatch | ||
lkdtm | ||
locking | ||
media_tests | ||
membarrier | ||
memfd | ||
memory-hotplug | ||
mincore | ||
mount | ||
mount_setattr | ||
mqueue | ||
nci | ||
net | ||
netfilter | ||
nsfs | ||
ntb | ||
openat2 | ||
pid_namespace | ||
pidfd | ||
powerpc | ||
prctl | ||
proc | ||
pstore | ||
ptp | ||
ptrace | ||
rcutorture | ||
resctrl | ||
rseq | ||
rtc | ||
safesetid | ||
seccomp | ||
sgx | ||
sigaltstack | ||
size | ||
sparc64 | ||
splice | ||
static_keys | ||
sync | ||
syscall_user_dispatch | ||
sysctl | ||
tc-testing | ||
timens | ||
timers | ||
tmpfs | ||
tpm2 | ||
uevent | ||
user | ||
vDSO | ||
vm | ||
watchdog | ||
wireguard | ||
x86 | ||
zram | ||
.gitignore | ||
gen_kselftest_tar.sh | ||
kselftest_deps.sh | ||
kselftest_harness.h | ||
kselftest_install.sh | ||
kselftest_module.h | ||
kselftest.h | ||
lib.mk | ||
Makefile | ||
run_kselftest.sh |