Skip to content

[9.1] bind /dev/fuse into the payload container when available - #8740

Open
chrisburr wants to merge 1 commit into
DIRACGrid:integrationfrom
chrisburr:fix/bind-dev-fuse-for-nested-containers
Open

[9.1] bind /dev/fuse into the payload container when available#8740
chrisburr wants to merge 1 commit into
DIRACGrid:integrationfrom
chrisburr:fix/bind-dev-fuse-for-nested-containers

Conversation

@chrisburr

Copy link
Copy Markdown
Member

BEGINRELEASENOTES

*WorkloadManagement
FIX: Support exposing /dev/fuse when using SingularityCE

ENDRELEASENOTES

--contain gives the payload a minimal /dev which does not include
/dev/fuse. Apptainer needs it to mount an image with fuse-overlayfs, so
payloads which start a container of their own (e.g. lb-run for an
application needing an older OS) fail on any host where the kernel
overlay is unavailable:

    FATAL: container creation failed: image driver mount failure: image
    driver fuse-overlayfs instance exited with error: fuse-overlayfs
    exited: fuse: device /dev/fuse not found. Kernel module not loaded?

This is silent and site dependent: where the overlay module is loaded
apptainer uses the kernel overlay and never needs fuse, so the same
payload succeeds. Of 140 test jobs at one site, 54 landed on nodes with
the module loaded and worked, while the other 86 failed this way.

/dev/fuse is also what squashfuse needs to mount SIF images without
privileges, so this affects payloads using SIF regardless of whether the
kernel overlay is available.

The bind is conditional because apptainer fails if a bind source does
not exist, mirroring the existing handling of /cvmfs.
@chrisburr
chrisburr force-pushed the fix/bind-dev-fuse-for-nested-containers branch from 8449dd7 to 02bab02 Compare August 12, 2026 12:12
@chrisburr
chrisburr marked this pull request as ready for review August 12, 2026 13:13
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.

1 participant