Re: [PATCH] crypto: api - Do not create test larvals if manager is disabled
From: Damien Le Moal <hidden>
Date: 2021-11-04 08:05:50
Also in:
linux-crypto, lkml
On 2021/11/04 16:58, Geert Uytterhoeven wrote:
Hi Damien, On Thu, Nov 4, 2021 at 8:29 AM Damien Le Moal [off-list ref] wrote:quoted
On 2021/11/03 0:41, Geert Uytterhoeven wrote:quoted
On Tue, 19 Oct 2021, Herbert Xu wrote:quoted
On Tue, Oct 05, 2021 at 07:33:28PM -0700, Nathan Chancellor wrote:quoted
I assume this is the diff you mean? This does not resolve the issue. My apologies if I am slow to respond, I am on vacation until the middle of next week.Sorry for the delay. The kernel robot figured out the problem for me. It's the crypto_alg_tested call that causes api.c to depend on algapi.c. This call is only invoked in the case where the crypto manager is turned off. We could instead simply make test larvals disappear in that case. ---8<--- The delayed boot-time testing patch created a dependency loop between api.c and algapi.c because it added a crypto_alg_tested call to the former when the crypto manager is disabled. We could instead avoid creating the test larvals if the crypto manager is disabled. This avoids the dependency loop as well as saving some unnecessary work, albeit in a very unlikely case. Reported-by: Nathan Chancellor <nathan@kernel.org> Reported-by: Naresh Kamboju <redacted> Reported-by: kernel test robot <redacted> Fixes: adad556efcdd ("crypto: api - Fix built-in testing dependency failures") Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>Thanks for your patch, which is now commit cad439fc040efe5f ("crypto: api - Do not create test larvals if manager is disabled"). I have bisected a failure to mount the root file system on k210 to this commit. Dmesg before/after: mmcblk0: mmc0:0000 SA04G 3.68 GiB random: fast init done mmcblk0: p1 -EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null). Quota mode: disabled. -VFS: Mounted root (ext4 filesystem) readonly on device 179:1. +EXT4-fs (mmcblk0p1): Cannot load crc32c driver. +VFS: Cannot open root device "mmcblk0p1" or unknown-block(179,1): error -80p1 exist as the message 2 lines above shows. And since the mount error is -80 (ELIBBAD), it is really all about crypto. Since the default k210 config compile everything in-kernel (no modules), it should work. Was crc32c compiled as a module ? If yes, then the k210 will need to be booted with U-Boot and use a real initrd, which likely will all end-up in a no memory situation. ext4 in itself will consume way too much memory...Everything is built-in, including crc32c. It worked fine, until the commit referenced.
I think I read this backward. I thought one of my k210 patch was wrong... It is the crypto patch that is at fault here. Thanks !
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds-- Damien Le Moal Western Digital Research