BTW, I get the opposite results from François on my Debian system when I build all three crc32c drivers as modules:
jim@anima:/lib/modules/4.14.36-test2$ find . -name "*crc32c*"
./kernel/lib/libcrc32c.ko ./kernel/arch/x86/crypto/crc32c-intel.ko ./kernel/crypto/crc32c_generic.ko
crc32c_generic and crc32c_intel are added to the initrd, but libcrc32c is not.
lsinitramfs /boot/initrd.img-4.14.36-test2|grep crc32
lib/modules/4.14.36-test2/kernel/arch/x86/crypto/crc32c-intel.ko lib/modules/4.14.36-test2/kernel/crypto/crc32c_generic.ko
On Thu, 26 Apr 2018 02:22:51 -0400 "Theodore Y. Ts'o" tytso@mit.edu wrote:
François, James,
Does this fix things for you?
Thanks,
- Ted
From 7ef79ad52136712172eb0525bf0b462516bf2f93 Mon Sep 17 00:00:00 2001 From: Theodore Ts'o tytso@mit.edu Date: Thu, 26 Apr 2018 00:44:46 -0400 Subject: [PATCH] ext4: add MODULE_SOFTDEP to ensure crc32c is included in the initramfs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit
Fixes: a45403b51582 ("ext4: always initialize the crc32c checksum driver") Reported-by: François Valenduc francoisvalenduc@gmail.com Signed-off-by: Theodore Ts'o tytso@mit.edu Cc: stable@vger.kernel.org
fs/ext4/super.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 185f7e61f4cf..eb104e8476f0 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -5886,5 +5886,6 @@ static void __exit ext4_exit_fs(void) MODULE_AUTHOR("Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others"); MODULE_DESCRIPTION("Fourth Extended Filesystem"); MODULE_LICENSE("GPL"); +MODULE_SOFTDEP("pre: crc32c"); module_init(ext4_init_fs) module_exit(ext4_exit_fs)