mounting 4k blocksize on e.g. 64k hosts

Colin Walters walters at verbum.org
Sat Dec 7 03:36:09 AEDT 2024


Hi, today in the composefs[1] project we do checksumming of a "canonicalized" EROFS (i.e. not written by mkfs.erofs currently[2]), and we hardcode a 4k blocksize today.

It came up in https://issues.redhat.com/browse/RHEL-63985 that on ppc64le (at least Fedora derivatives?) use a 64k page size by default, and erofs refuses to mount:

`erofs: (device loop0): erofs_read_superblock: blkszbits 12 isn't supported on this platform `

How hard would that be to support? If we have to start dealing with different composefs digests per architecture, things would be really messy for us. Especially given even that's not sufficient because on e.g. aarch64 nowadays in RHEL we support both 4k and 64k page size kernels.

If it's not easy to support mounting 4k in erofs regardless of host page size, I think for our use case it's probably OK in this corner case to just read the entire EROFS into memory if that helps?

[1] https://github.com/containers/composefs/
[2] https://github.com/containers/composefs/issues/335


More information about the Linux-erofs mailing list