Repository navigation
Every image stage 06 packs has 4096-byte blocks, the size dm-verity reads it in - #531
Merged
Merged
Conversation
…eads it in mke2fs.conf gives a file system under 512 MiB blocks of 1024, and ext4 cannot mount a block smaller than the dm-verity device's own, so a zone could not start on the probe image (mount: EINVAL) after an install or an update. make_ext4 asks for 4096, and pack_image refuses an image of any other block size.
DevomB
marked this pull request as ready for review
October 15, 2026 15:57
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The interim browser round (Distro 38735220159, batch 636e7fb) failed three acceptance parts on one error: a zone could not start on the probe image.
The three items:
The copy and check steps before the mount all pass (list signature, sizes, hashes, the verity open). The mount itself is refused.
Cause.
make_ext4runs mke2fs without-b, and e2fsprogs 1.47.1's mke2fs.conf gives a file system under 512 MiB thesmalltype, which isblocksize = 1024. The probe image is about 16 MiB, so it gets 1 KiB blocks. kryptikd opens every image with dm-verity at--data-block-size=4096, and dm-verity sets the mapped device's logical block size to its data block size. ext4 cannot set a block size below the device's logical block size, so the mount fails with "bad block size 1024", which is EINVAL. The root is far above 512 MiB, so it got 4096-byte blocks by default and never showed this. Any image under 512 MiB has the same flaw.Fix.
make_ext4passes-b 4096. This is a no-op for the root, whose bytes the reproducibility check still compares.dumpe2fs -hblock size isn't 4096, so a later mke2fs default can't bring the flaw back unnoticed.Only stage 06 reads 06-iso.sh, and the image fingerprint doesn't cover it, so round 3's image trees are packed again without a Firefox rebuild.