On Mon, Nov 09, 2020 at 09:31:41AM +0100, Ard Biesheuvel wrote: > Commit c4741b2305979 ("crypto: run initcalls for generic implementations > earlier") converted tcrypt.ko's module_init() to subsys_initcall(), but > this was unintentional: tcrypt.ko currently cannot be built into the core > kernel, and so the subsys_initcall() gets converted into module_init() > under the hood. Given that tcrypt.ko does not implement a generic version > of a crypto algorithm that has to be available early during boot, there > is no point in running the tcrypt init code earlier than implied by > module_init(). > > However, for crypto development purposes, we will lift the restriction > that tcrypt.ko must be built as a module, and when builtin, it makes sense > for tcrypt.ko (which does its work inside the module init function) to run > as late as possible. So let's switch to late_initcall() instead. > > Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx> > --- > crypto/tcrypt.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c > index eea0f453cfb6..fc1f3e516694 100644 > --- a/crypto/tcrypt.c > +++ b/crypto/tcrypt.c > @@ -3066,7 +3066,7 @@ static int __init tcrypt_mod_init(void) > */ > static void __exit tcrypt_mod_fini(void) { } > > -subsys_initcall(tcrypt_mod_init); > +late_initcall(tcrypt_mod_init); > module_exit(tcrypt_mod_fini); > > module_param(alg, charp, 0); > -- Reviewed-by: Eric Biggers <ebiggers@xxxxxxxxxx>