Re: [PATCH v2] module: Don't wait for GOING modules

From: Lucas De Marchi
Date: Sun Mar 12 2023 - 01:25:27 EST


On Sat, Jan 21, 2023 at 02:40:20PM -0800, Luis Chamberlain wrote:
On Thu, Jan 19, 2023 at 04:58:53PM -0800, Luis Chamberlain wrote:
On Thu, Jan 19, 2023 at 04:51:27PM -0800, Luis Chamberlain wrote:
> On Thu, Jan 19, 2023 at 04:47:05PM +0100, Petr Mladek wrote:
> > Yes, the -EINVAL error is strange. It is returned also in
> > kernel/module/main.c on few locations. But neither of them
> > looks like a good candidate.
>
> OK I updated to next-20230119 and I don't see the issue now.
> Odd. It could have been an issue with next-20221207 which I was
> on before.
>
> I'll run some more test and if nothing fails I'll send the fix
> to Linux for rc5.

Jeesh it just occured to me the difference, which I'll have to
test next, for next-20221207 I had enabled module compression
on kdevops with zstd.

You can see the issues on kdevops git log with that... and I finally
disabled it and the kmod test issue is gone. So it could be that
but I just am ending my day so will check tomorrow if that was it.
But if someone else beats me then great.

With kdevops it should be a matter of just enabling zstd as I
just bumped support for next-20230119 and that has module decompression
disabled.

So indeed, my suspcions were correct. There is one bug with
compression on debian:

- gzip compressed modules don't end up in the initramfs

There is a generic upstream kmod bug:

- modprobe --show-depends won't grok compressed modules so initramfs
tools that use this as Debian likely are not getting module dependencies
installed in their initramfs

are you sure you have the relevant compression setting enabled
in kmod?

$ kmod --version
kmod version 30
+ZSTD +XZ +ZLIB +LIBCRYPTO -EXPERIMENTAL
$ modprobe --show-depends ext4
insmod /lib/modules/6.1.12-1-MANJARO/kernel/fs/jbd2/jbd2.ko.zst insmod /lib/modules/6.1.12-1-MANJARO/kernel/fs/mbcache.ko.zst insmod /lib/modules/6.1.12-1-MANJARO/kernel/lib/crc16.ko.zst insmod /lib/modules/6.1.12-1-MANJARO/kernel/arch/x86/crypto/crc32c-intel.ko.zst insmod /lib/modules/6.1.12-1-MANJARO/kernel/crypto/crc32c_generic.ko.zst insmod /lib/modules/6.1.12-1-MANJARO/kernel/fs/ext4/ext4.ko.zst
Lucas De Marchi