Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,6 @@ func Make(ctx context.Context, rootfsPath string, sizeMb int64, blockSize int64)
"huge_file",
"large_file",
"sparse_super2",

// Disabled for compatibility with older guest e2fsprogs (Ubuntu 22.04, Debian 11).
// orphan_file was added as default in e2fsprogs >= 1.47.0; without disabling it,
// guest tools fail with "unsupported read-only feature(s)".
// See https://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.47.0
"^orphan_file",
}, ","),

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removing ^orphan_file entirely fixes the host-side error on e2fsprogs < 1.47.0, but reintroduces the original problem that PR #2082 was solving: on hosts with e2fsprogs >= 1.47.0, orphan_file will now be enabled by default in the filesystem, causing older guests (Ubuntu 22.04, Debian 11) to fail with unsupported read-only feature(s). The safe fix would be to detect host e2fsprogs version at runtime and conditionally pass ^orphan_file only when >= 1.47.0, or to use tune2fs -O ^orphan_file post-creation (which may handle the unknown-feature case more gracefully). As-is, this is a regression for anyone running newer e2fsprogs on the host with older-e2fsprogs guests.

Comment on lines 57 to 58

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep orphan_file disabled when building on newer hosts

If build-reserved-disk-space-mb is enabled and this runs on a builder whose mkfs.ext4 defaults orphan_file back on, the filesystem becomes unreadable to older guest tune2fs binaries again. We still run tune2fs -r /dev/vda inside the sandbox during post-processing (packages/orchestrator/pkg/template/build/phases/finalize/builder.go:222-230, packages/orchestrator/pkg/template/build/sandboxtools/command.go:237-263), so those builds will start failing with unsupported read-only feature(s) as soon as a newer e2fsprogs host is introduced. This fixes the current old-host mkfs.ext4 error by making the image feature set host-version-dependent again.

Useful? React with 👍 / 👎.

"-b", strconv.FormatInt(blockSize, 10),
"-m", strconv.FormatInt(reservedBlocksPercentage, 10),
Expand Down
Loading