all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Vagrant Cascadian <vagrant@debian.org>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 34162@debbugs.gnu.org
Subject: bug#34162: linux-libre 4.20+ fails to mount ext4 on aarch64
Date: Wed, 23 Jan 2019 09:48:14 -0800	[thread overview]
Message-ID: <87h8dzw9i9.fsf@ponder> (raw)
In-Reply-To: <874l9zhcew.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 2325 bytes --]

On 2019-01-23, Ludovic Courtès wrote:
> Vagrant Cascadian <vagrant@debian.org> skribis:
>> After upgrading to linux-libre 4.20, and again tested with 4.20.3, an
>> aarch64 system failed to boot (using 4.19.10 worked fine):
>>
>> [    3.692351] device-mapper: ioctl: 4.39.0-ioctl (2018-04-03) initialised: dm-devel@redhat.com
>> ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab file while determining whether /dev/sda6 is mounted.
>> /dev/sda6: clean, 596262/6553600 files, 7663147/26214400 blocks
>> [    3.948786] EXT4-fs (sda6): Cannot load crc32c driver.
>> ERROR: In procedure mount:
>> In procedure mount: No such file or directory
...
>> Workaround or fix was to add to config.scm:
>>
>> (initrd (append (list "crc32c_generic" ... ) %base-initrd-modules))
>
> There are potentially two issues here:
>
>   1. Why wasn’t crc32c_generic.ko automatically pulled in by the initrd
>      build code?  Isn’t it a dependency of ext4.ko?

It is not a hard dependency, no. It's an optional feature only needed if
certain ext4 features are enabled on the filesystem (maybe metadata_csum
in this case?). So it's listed as a MODULE_SOFTDEP of ext4:

  fs/ext4/super.c:MODULE_SOFTDEP("pre: crc32c");


>   2. Is crc32c_generic built-in in our x86_64 kernel config?

On x86_64:

$ grep CRC32 /gnu/store/*linux-libre*4.20.4*/.config
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=y
CONFIG_CRYPTO_CRC32=m
CONFIG_CRYPTO_CRC32_PCLMUL=m
CONFIG_CRC32=y
# CONFIG_CRC32_SELFTEST is not set
CONFIG_CRC32_SLICEBY8=y
# CONFIG_CRC32_SLICEBY4 is not set
# CONFIG_CRC32_SARWATE is not set
# CONFIG_CRC32_BIT is not set
CONFIG_LIBCRC32C=m

On aarch64:

$ grep CRC32 /gnu/store/*linux-libre*4.20.3*/.config
CONFIG_CRYPTO_CRC32C=m
CONFIG_CRYPTO_CRC32=m
CONFIG_CRC32=y
# CONFIG_CRC32_SELFTEST is not set
CONFIG_CRC32_SLICEBY8=y
# CONFIG_CRC32_SLICEBY4 is not set
# CONFIG_CRC32_SARWATE is not set
# CONFIG_CRC32_BIT is not set
CONFIG_LIBCRC32C=m

on aarch64 4.19.10 also contained:

CONFIG_CRYPTO_CRC32_ARM64_CE=y

Which is no longer available in 4.20.x upstream in commit
598b7d41e544322c8c4f3737ee8ddf905a44175e.

So my hunch is that crc32c-ce was used in 4.19.x, but 4.20.x needed the
generic crc32c implementation.


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

  reply	other threads:[~2019-01-23 17:49 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-21 19:48 bug#34162: linux-libre 4.20+ fails to mount ext4 on aarch64 Vagrant Cascadian
2019-01-23 10:54 ` Ludovic Courtès
2019-01-23 17:48   ` Vagrant Cascadian [this message]
2019-01-25  8:59     ` Ludovic Courtès
2019-01-25 11:30       ` [bug#34195] [PATCH] linux-modules: Add module-soft-dependencies Danny Milosavljevic
2019-01-25 11:48         ` [bug#34195] [PATCH v2] linux-modules: Add modules-soft-dependencies Danny Milosavljevic
2019-01-25 17:07           ` Ludovic Courtès
2019-01-25 17:25             ` bug#34195: " Danny Milosavljevic
2019-01-26 14:10               ` [bug#34195] " Ludovic Courtès
2019-01-26 15:00                 ` Danny Milosavljevic
2019-01-26 15:19                   ` Ludovic Courtès
2019-01-26 16:19                     ` [bug#34195] [PATCH] linux-modules: module-soft-dependencies: Partition the result and return it as two lists Danny Milosavljevic
2019-01-26 16:23                       ` [bug#34195] [PATCH v2] " Danny Milosavljevic
2019-01-23 17:54   ` bug#34162: linux-libre 4.20+ fails to mount ext4 on aarch64 Efraim Flashner
2019-01-23 17:57     ` Efraim Flashner
2019-01-25  8:49       ` Ludovic Courtès
2019-01-23 20:58 ` Mark H Weaver
2019-01-24  0:44   ` Vagrant Cascadian
2019-01-24  4:02     ` Mark H Weaver

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87h8dzw9i9.fsf@ponder \
    --to=vagrant@debian.org \
    --cc=34162@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.