mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-18 04:20:44 +00:00
Create a netconsole test that puts a lot of pressure on the netconsole list manipulation. Do it by creating dynamic targets and deleting targets while messages are being sent. Also put interface down while the messages are being sent, as creating parallel targets. The code launches three background jobs on distinct schedules: * Toggle netcons target every 30 iterations * create and delete random_target every 50 iterations * toggle iface every 70 iterations This creates multiple concurrency sources that interact with netconsole states. This is good practice to simulate stress, and exercise netpoll and netconsole locks. This test already found an issue as reported in [1] Link: https://lore.kernel.org/all/20250901-netpoll_memleak-v1-1-34a181977dfc@debian.org/ [1] Signed-off-by: Breno Leitao <leitao@debian.org> Reviewed-by: Andre Carvalho <asantostc@gmail.com> Reviewed-by: Simon Horman <horms@kernel.org> Link: https://patch.msgid.link/20251107-netconsole_torture-v10-3-749227b55f63@debian.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
41 lines
719 B
Makefile
41 lines
719 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
CFLAGS += $(KHDR_INCLUDES)
|
|
|
|
TEST_INCLUDES := $(wildcard lib/py/*.py) \
|
|
$(wildcard lib/sh/*.sh) \
|
|
../../net/lib.sh \
|
|
|
|
TEST_GEN_FILES := \
|
|
napi_id_helper \
|
|
# end of TEST_GEN_FILES
|
|
|
|
TEST_PROGS := \
|
|
hds.py \
|
|
napi_id.py \
|
|
napi_threaded.py \
|
|
netcons_basic.sh \
|
|
netcons_cmdline.sh \
|
|
netcons_fragmented_msg.sh \
|
|
netcons_overflow.sh \
|
|
netcons_sysdata.sh \
|
|
netcons_torture.sh \
|
|
netpoll_basic.py \
|
|
ping.py \
|
|
psp.py \
|
|
queues.py \
|
|
shaper.py \
|
|
stats.py \
|
|
xdp.py \
|
|
# end of TEST_PROGS
|
|
|
|
# YNL files, must be before "include ..lib.mk"
|
|
YNL_GEN_FILES := psp_responder
|
|
TEST_GEN_FILES += $(YNL_GEN_FILES)
|
|
|
|
include ../../lib.mk
|
|
|
|
# YNL build
|
|
YNL_GENS := psp
|
|
|
|
include ../../net/ynl.mk
|