[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Zyq2fMpMGy7SgeYE@bombadil.infradead.org>
Date: Tue, 5 Nov 2024 16:21:16 -0800
From: Luis Chamberlain <mcgrof@...nel.org>
To: Sami Tolvanen <samitolvanen@...gle.com>
Cc: linux-modules@...r.kernel.org, linux-kernel@...r.kernel.org,
petr.pavlu@...e.com, da.gomez@...sung.com, masahiroy@...nel.org,
deller@....de, linux-arch@...r.kernel.org,
live-patching@...r.kernel.org, kris.van.hees@...cle.com
Subject: Re: [PATCH v3] selftests: add new kallsyms selftests
On Tue, Oct 29, 2024 at 09:24:30AM -0700, Sami Tolvanen wrote:
> Hi Luis,
>
> On Mon, Oct 21, 2024 at 12:33 PM Luis Chamberlain <mcgrof@...nel.org> wrote:
> >
> > diff --git a/lib/tests/module/gen_test_kallsyms.sh b/lib/tests/module/gen_test_kallsyms.sh
> > new file mode 100755
> > index 000000000000..e85f10dc11bd
> > --- /dev/null
> > +++ b/lib/tests/module/gen_test_kallsyms.sh
> > @@ -0,0 +1,128 @@
> [..]
> > +gen_template_module_data_b()
> > +{
> > + printf "\nextern int auto_test_a_%010d;\n\n" 28
> > + echo "static int auto_runtime_test(void)"
> > + echo "{"
> > + printf "\nreturn auto_test_a_%010d;\n" 28
> > + echo "}"
> > +}
>
> FYI, I get a warning when loading test_kallsyms_b because the init
> function return value is >0:
This fixes it.
>From b776d662c8e05d67c7879d0f6f5208dd431d900a Mon Sep 17 00:00:00 2001
From: Luis Chamberlain <mcgrof@...nel.org>
Date: Wed, 6 Nov 2024 00:17:21 +0000
Subject: [PATCH] tests/module/gen_test_kallsyms.sh: use 0 value for variables
Use 0 for the values as we use them for the return value on init
to keep the test modules simple. This fixes a splat reported
do_init_module: 'test_kallsyms_b'->init suspiciously returned 255, it should follow 0/-E convention
do_init_module: loading module anyway...
CPU: 5 UID: 0 PID: 1873 Comm: modprobe Not tainted 6.12.0-rc3+ #4
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 2024.08-1 09/18/2024
Call Trace:
<TASK>
dump_stack_lvl+0x56/0x80
do_init_module.cold+0x21/0x26
init_module_from_file+0x88/0xf0
idempotent_init_module+0x108/0x300
__x64_sys_finit_module+0x5a/0xb0
do_syscall_64+0x4b/0x110
entry_SYSCALL_64_after_hwframe+0x76/0x7e
RIP: 0033:0x7f4f3a718839
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff>
RSP: 002b:00007fff97d1a9e8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
RAX: ffffffffffffffda RBX: 000055b94001ab90 RCX: 00007f4f3a718839
RDX: 0000000000000000 RSI: 000055b910e68a10 RDI: 0000000000000004
RBP: 0000000000000000 R08: 00007f4f3a7f1b20 R09: 000055b94001c5b0
R10: 0000000000000040 R11: 0000000000000246 R12: 000055b910e68a10
R13: 0000000000040000 R14: 000055b94001ad60 R15: 0000000000000000
</TASK>
do_init_module: 'test_kallsyms_b'->init suspiciously returned 255, it should follow 0/-E convention
do_init_module: loading module anyway...
CPU: 1 UID: 0 PID: 1884 Comm: modprobe Not tainted 6.12.0-rc3+ #4
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 2024.08-1 09/18/2024
Call Trace:
<TASK>
dump_stack_lvl+0x56/0x80
do_init_module.cold+0x21/0x26
init_module_from_file+0x88/0xf0
idempotent_init_module+0x108/0x300
__x64_sys_finit_module+0x5a/0xb0
do_syscall_64+0x4b/0x110
entry_SYSCALL_64_after_hwframe+0x76/0x7e
RIP: 0033:0x7ffaa5d18839
Reported-by: Sami Tolvanen <samitolvanen@...gle.com>
Signed-off-by: Luis Chamberlain <mcgrof@...nel.org>
---
lib/tests/module/gen_test_kallsyms.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/tests/module/gen_test_kallsyms.sh b/lib/tests/module/gen_test_kallsyms.sh
index ae5966f1f904..3f2c626350ad 100755
--- a/lib/tests/module/gen_test_kallsyms.sh
+++ b/lib/tests/module/gen_test_kallsyms.sh
@@ -32,7 +32,7 @@ gen_num_syms()
PREFIX=$1
NUM=$2
for i in $(seq 1 $NUM); do
- printf "int auto_test_%s_%010d = 0xff;\n" $PREFIX $i
+ printf "int auto_test_%s_%010d = 0;\n" $PREFIX $i
printf "EXPORT_SYMBOL_GPL(auto_test_%s_%010d);\n" $PREFIX $i
done
echo
--
2.45.2
Powered by blists - more mailing lists