[release/2.3] snapshots/erofs: keep lowers stacked above a merged fsmeta by hsiangkao · Pull Request #13876 · containerd/containerd · GitHub
Skip to content

[release/2.3] snapshots/erofs: keep lowers stacked above a merged fsmeta - #13876

Merged
dmcgowan merged 1 commit into
containerd:release/2.3from
erofs:erofs-fsmerge-fix-backport
Jul 30, 2026
Merged

[release/2.3] snapshots/erofs: keep lowers stacked above a merged fsmeta#13876
dmcgowan merged 1 commit into
containerd:release/2.3from
erofs:erofs-fsmerge-fix-backport

Conversation

@hsiangkao

@hsiangkao hsiangkao commented Jul 30, 2026

Copy link
Copy Markdown
Member

Cherry-pick of #13860

Fix EROFS snapshotter dropping lower layers stacked above merged filesystem metadata

mounts() moved `first` to the merged fsmeta mount's index whenever
mountFsMeta matched, collapsing the overlay's lowerdir range to the
fsmeta alone and dropping any plain lowers already appended above it.

When fsmerge was added, fsmeta was only ever written for the top
parent of the chain being prepared, so the loop matched at i == 0,
where first already equalled the fsmeta's index and the reassignment
was a no-op. It only mattered once the fsmeta could sit below the top
parent, i.e. a chain extending an already-merged sub-chain. The
snapshotter no longer generates fsmeta itself, so today this only
affects externally supplied fsmeta files.

first only marks the start of the lowerdir range, so it must stay at
the first lower's index.

Signed-off-by: Derek McGowan <derek@mcg.dev>
@github-project-automation github-project-automation Bot moved this from Needs Triage to Review In Progress in Pull Request Review Jul 30, 2026
@dmcgowan
dmcgowan merged commit 2cb32f0 into containerd:release/2.3 Jul 30, 2026
85 of 88 checks passed
@github-project-automation github-project-automation Bot moved this from Review In Progress to Done in Pull Request Review Jul 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants