Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

abi: Disable unsupported flags and functionality on MacOS #162

Merged
merged 1 commit into from
Oct 25, 2023

Conversation

griff
Copy link
Contributor

@griff griff commented Oct 11, 2023

MacFUSE is a fork of FUSE version 19 with its own custom flags that sometimes clash with later versions of FUSE. E.g. INIT_EXT flags clashes with MacFUSE flag VOL_RENAME.

So to avoid confussion this change disables all flags and hopefully all functionality not supported on MacOS. This applies both to MacFUSE and FUSE-T because FUSE-T is built to be compatible with MacFUSE and not upstream FUSE.

@griff
Copy link
Contributor Author

griff commented Oct 11, 2023

I could also add the MacFUSE specific flags to this PR if you want them.

@bergwolf
Copy link
Contributor

oh, that's a lot of #[cfg(not(target_os = "macos"))]. Does it make sense to split them into src/abi/fuse_abi_linux.rs and src/abi/fuse_abi_macos.rs? /cc @liubogithub @jiangliu

@griff
Copy link
Contributor Author

griff commented Oct 17, 2023

@bergwolf That is really up to you. If you want it split I will split it.

@bergwolf
Copy link
Contributor

@griff Please help to split it, thanks! I think it makes the code more clear.

@jiangliu
Copy link
Contributor

jiangliu commented Oct 20, 2023

oh, that's a lot of #[cfg(not(target_os = "macos"))]. Does it make sense to split them into src/abi/fuse_abi_linux.rs and src/abi/fuse_abi_macos.rs? /cc @liubogithub @jiangliu

It would better to split for archs.

MacFUSE is a fork of FUSE version 19 with its own custom flags that
sometimes clash with later versions of FUSE. E.g. INIT_EXT flags clashes
with MacFUSE flag VOL_RENAME.

So to avoid confussion this change splits fuse_abi into fuse_abi_linux
and fuse_abi_macos and hopefully disables all functionality not
supported on MacOS. This applies both to MacFUSE and FUSE-T because
FUSE-T is built to be compatible with MacFUSE and not upstream FUSE.

Signed-off-by: Brian Olsen <[email protected]>
@griff
Copy link
Contributor Author

griff commented Oct 25, 2023

@griff Please help to split it, thanks! I think it makes the code more clear.

Done

@jiangliu jiangliu merged commit a8d8cd9 into cloud-hypervisor:master Oct 25, 2023
4 checks passed
jiangliu added a commit to jiangliu/fuse-backend-rs that referenced this pull request Oct 26, 2023
Clean up code related to macos.

Follow up of cloud-hypervisor#162

Signed-off-by: Jiang Liu <[email protected]>
jiangliu added a commit to jiangliu/fuse-backend-rs that referenced this pull request Oct 26, 2023
Clean up code related to macos.

Follow up of cloud-hypervisor#162

Signed-off-by: Jiang Liu <[email protected]>
jiangliu added a commit to jiangliu/fuse-backend-rs that referenced this pull request Oct 26, 2023
Clean up code related to macos.

Follow up of cloud-hypervisor#162

Signed-off-by: Jiang Liu <[email protected]>
eryugey pushed a commit that referenced this pull request Oct 27, 2023
Clean up code related to macos.

Follow up of #162

Signed-off-by: Jiang Liu <[email protected]>
tvlbot pushed a commit to tvlfyi/tvix that referenced this pull request Dec 16, 2023
The fix mentioned in Cargo.toml did land in
cloud-hypervisor/fuse-backend-rs#162.

Change-Id: I4451f910806f05400f7e0f83581ae786f170b9e2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/10375
Autosubmit: flokli <[email protected]>
Tested-by: BuildkiteCI
Reviewed-by: raitobezarius <[email protected]>
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