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

If fuse-overlayfs is used with a writable overlay, it should always be used in future. #3177

Open
dtrudg opened this issue Aug 6, 2024 · 0 comments
Labels
bug Something isn't working

Comments

@dtrudg
Copy link
Member

dtrudg commented Aug 6, 2024

Version of Singularity

main / 4.1

Describe the bug

While investigating #3176 it has become apparent that my understanding of native overlay vs fuse-overlayfs compatibility is incorrect. Even where xattr support and creation of 0:0 char devices is available, fuse-overlayfs can create overlays that will not mount with the same content under native overlayfs.

When checking whether a directory is opaque, fuse-overlayfs inspects things in the following order:

  • native overlay privileged xattr
  • native overlay unpriviliged xattr
  • fuse-overlayfs xattr
  • presence of .wh..wh..opq file.

When creating an opaque directory, fuse-overlayfs:

  • Tries to set the native overlay privileged xattr
  • If this fails, tries to set the fuse-overlayfs xattr
  • always creates a .wh..wh..opq file

Note that the native overlay unprivileged xattr is never set... so if fuse-overlayfs is used in a context where the unprivileged xattr would be set by native overlayfs, then it will generate a filesystem incompatible with native overlayfs.

@dtrudg dtrudg added the bug Something isn't working label Aug 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant