Re: Warning at crypto/testmgr.c:5900, while booting to OS

From: Stefan Berger
Date: Thu Jun 13 2024 - 17:02:19 EST




On 6/12/24 02:46, Venkat Rao Bagalkote wrote:
Greetings!!!

Observing Kernel Warnings while booting to OS at crypto/testmgr.c:5900.

Traces:

[    0.682613] alg: akcipher: verify test failed. err -129
[    0.682620] alg: akcipher: test 1 failed for ecdsa-nist-p521-generic, err=-129
[    0.682626] alg: self-tests for ecdsa-nist-p521 using ecdsa-nist-p521-generic failed (rc=-129)
[    0.682628] ------------[ cut here ]------------
[    0.682634] alg: self-tests for ecdsa-nist-p521 using ecdsa-nist-p521-generic failed (rc=-129)
[    0.682645] WARNING: CPU: 8 PID: 221 at crypto/testmgr.c:5900 alg_test.part.0+0xc88/0xe18
[    0.682653] Modules linked in:
[    0.682656] CPU: 8 PID: 221 Comm: cryptomgr_test Not tainted 6.10.0-rc3-next-20240611-auto #1
[    0.682659] Hardware name: IBM,8375-42A POWER9 (raw) 0x4e0202 0xf000005 of:IBM,FW950.A0 (VL950_144) hv:phyp pSeries
[    0.682660] NIP:  c0000000007bf48c LR: c0000000007bf488 CTR: c00000000103ef20
[    0.682662] REGS: c00000005dc3fb60 TRAP: 0700   Not tainted (6.10.0-rc3-next-20240611-auto)
[    0.682664] MSR:  800000000282b033 <SF,VEC,VSX,EE,FP,ME,IR,DR,RI,LE> CR: 28008241  XER: 00000005
[    0.682672] CFAR: c00000000016361c IRQMASK: 0
               GPR00: c0000000007bf488 c00000005dc3fe00 c000000001583800 0000000000000052
               GPR04: 0000000000000000 c00000005dc3fc10 c00000005dc3fc08 0000000000000000
               GPR08: c000000002797d38 0000000000000000 0000000000000001 0000000000000001
               GPR12: c000000002a57e18 c00000000f7c6700 c0000000001a185c c00000000679a180
               GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
               GPR20: 0000000000000000 0000000000000000 000000000000007d 000000000000007d
               GPR24: ffffffffffffff7f c00000000e29d040 0000000000001f40 0000000000000006
               GPR28: 0000000000000400 ffffffffffffff7f c00000000e29d080 c00000000e29d000
[    0.682700] NIP [c0000000007bf48c] alg_test.part.0+0xc88/0xe18
[    0.682703] LR [c0000000007bf488] alg_test.part.0+0xc84/0xe18
[    0.682707] Call Trace:
[    0.682708] [c00000005dc3fe00] [c0000000007bf488] alg_test.part.0+0xc84/0xe18 (unreliable)
[    0.682713] [c00000005dc3ff60] [c0000000007b7ac4] cryptomgr_test+0x34/0x64
[    0.682717] [c00000005dc3ff90] [c0000000001a198c] kthread+0x138/0x140
[    0.682721] [c00000005dc3ffe0] [c00000000000df98] start_kernel_thread+0x14/0x18
[    0.682724] Code: 60000000 7f7adb78 4bfffe00 60000000 60000000 3c62ffe7 7fe5fb78 7fc4f378 7fa6eb78 3863fd20 4b9a4111 60000000 <0fe00000> 4bfff7ec 60000000 60000000
[    0.682735] ---[ end trace 0000000000000000 ]---

This issue is being caused by the patch: 2fd2a82ccbfc106aec314db6c4bda5e24fd32a22.

Thanks for the commit. I see the issue also on ppc64 but not on x86_64. It's an off-by one issue in c6ab5c915da460c not clearing the most significant digit when insufficient bytes are provided.


After reverting the above patch, issue is not seen.

Regards,
Venkat.