Skip to content

Comments

mount: Add support for FEX merged rootfs mode#130

Merged
slp merged 2 commits intoAsahiLinux:mainfrom
hoshinolina:fex-merged-rootfs
Jan 9, 2025
Merged

mount: Add support for FEX merged rootfs mode#130
slp merged 2 commits intoAsahiLinux:mainfrom
hoshinolina:fex-merged-rootfs

Conversation

@hoshinolina
Copy link
Contributor

@hoshinolina hoshinolina commented Dec 19, 2024

In this mode, the FEX rootfs passed to FEX is already overlaid on top of the real root filesystem, so FEX directs all guest accesses to it instead of doing its own overlay logic. This, together with a bunch of fixes on the FEX side, fixes Wine.

Opt-in for now, since this actively breaks things with the current FEX. May become the default in the future once all that is sorted out.

The FEX config option name is speculative since it doesn't exist yet and it isn't strictly required to tell FEX about this, but I'd rather have it in to be able to change the logic on the FEX side in this mode as needed.

@hoshinolina
Copy link
Contributor Author

Disabled the Clippy warning since, in this case, its suggestion actually makes the code flow less logical.

@hoshinolina
Copy link
Contributor Author

hoshinolina commented Dec 19, 2024

Also note that this depends on containers/libkrun#244 (without it the overlayfs won't behave properly).

@hoshinolina
Copy link
Contributor Author

Added one unrelated cleanup commit because it depends on changes in the base commit here. Hopefully shouldn't be controversial.

@hoshinolina hoshinolina force-pushed the fex-merged-rootfs branch 2 times, most recently from c39fb53 to e346250 Compare December 29, 2024 10:01
@hoshinolina
Copy link
Contributor Author

hoshinolina commented Dec 29, 2024

Reworked the logic a bit so merged_rootfs is ignored when the rootfs is host-managed (this means we can flip on the default without affecting those setups, which will make their own decision about merged rootfs behavior). Also unset the env var in that case, which should be cleaned up after #134 is merged since this should be moved to the config file.

In this mode, the FEX rootfs passed to FEX is already overlaid on top of
the real root filesystem, so FEX directs all guest accesses to it
instead of doing its own overlay logic. This, together with a bunch of
fixes on the FEX side, fixes Wine.

Opt-in for now, since this actively *breaks* things with the current
FEX. May become the default in the future once all that is sorted out.

Signed-off-by: Asahi Lina <lina@asahilina.net>
Signed-off-by: Asahi Lina <lina@asahilina.net>
Copy link
Collaborator

@slp slp left a comment

Choose a reason for hiding this comment

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

LGTM.

@slp slp merged commit a336fed into AsahiLinux:main Jan 9, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants