Skip to content

Commit

Permalink
selftests: kallsyms: fix and clarify current test boundaries
Browse files Browse the repository at this point in the history
Provide and clarify the existing ranges and what you should expect.
Fix the gen_test_kallsyms.sh script to accept different ranges.

Fixes: 84b4a51 ("selftests: add new kallsyms selftests")
Signed-off-by: Luis Chamberlain <[email protected]>
  • Loading branch information
mcgrof committed Nov 28, 2024
1 parent 7ea1355 commit 3e1d95b
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 3 deletions.
32 changes: 31 additions & 1 deletion lib/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -3003,9 +3003,39 @@ config TEST_KALLSYMS_D
tristate
depends on m

choice
prompt "Kallsym test range"
default TEST_KALLSYMS_LARGE
help
Selecting something other than "Fast" will enable tests which slow
down the build and may crash your build.

config TEST_KALLSYMS_FAST
bool "Fast builds"
help
You won't really be testing kallsysms, so this just helps fast builds
when allmodconfig is used..

config TEST_KALLSYMS_LARGE
bool "Enable testing kallsyms with large exports"
help
This will enable larger number of symbols. This will slow down
your build considerably.

config TEST_KALLSYMS_MAX
bool "Known kallsysms limits"
help
This will enable exports to the point we know we'll start crashing
builds.

endchoice

config TEST_KALLSYMS_NUMSYMS
int "test kallsyms number of symbols"
default 100
range 2 10000
default 2 if TEST_KALLSYMS_FAST
default 100 if TEST_KALLSYMS_LARGE
default 10000 if TEST_KALLSYMS_MAX
help
The number of symbols to create on TEST_KALLSYMS_A, only one of which
module TEST_KALLSYMS_B will use. This also will be used
Expand Down
9 changes: 7 additions & 2 deletions lib/tests/module/gen_test_kallsyms.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ NUM_SYMS=$2
SCALE_FACTOR=$3
TEST_TYPE=$(echo $TARGET | sed -e 's|lib/tests/module/test_kallsyms_||g')
TEST_TYPE=$(echo $TEST_TYPE | sed -e 's|.c||g')
FIRST_B_LOOKUP=1

if [[ $NUM_SYMS -gt 2 ]]; then
FIRST_B_LOOKUP=$((NUM_SYMS/2))
fi

gen_template_module_header()
{
Expand Down Expand Up @@ -52,10 +57,10 @@ ____END_MODULE

gen_template_module_data_b()
{
printf "\nextern int auto_test_a_%010d;\n\n" 28
printf "\nextern int auto_test_a_%010d;\n\n" $FIRST_B_LOOKUP
echo "static int auto_runtime_test(void)"
echo "{"
printf "\nreturn auto_test_a_%010d;\n" 28
printf "\nreturn auto_test_a_%010d;\n" $FIRST_B_LOOKUP
echo "}"
}

Expand Down

0 comments on commit 3e1d95b

Please sign in to comment.