Skip to content

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

Description

@dtrudg

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.

Activity

  1. dtrudg commented on Oct 5, 2026

    @dtrudg
    ContributorAuthor

    This issue is being closed, as it is unlikely to be addressed for the final 4.6.0 release.

    Please see the EOL / EOE announcement published at https://sylabs.io

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions