Skip to content

agent: expose NVIDIA IMEX channels in nspawn#435

Merged
bcho merged 11 commits into
mainfrom
copilot/agent-support-exposing-imex
Jul 14, 2026
Merged

agent: expose NVIDIA IMEX channels in nspawn#435
bcho merged 11 commits into
mainfrom
copilot/agent-support-exposing-imex

Conversation

Copilot AI commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

NVIDIA IMEX channel devices were not visible inside nspawn machines, preventing multi-node NVLink workloads from accessing configured channels.

  • Device discovery
    • Discover /dev/nvidia-caps-imex-channels/* with other NVIDIA devices.
  • nspawn exposure
    • Emit corresponding Bind= and DeviceAllow= entries.
  • Documentation
    • Document IMEX channel exposure as part of NVIDIA GPU support.

Copilot AI assigned Copilot and bcho Jul 9, 2026
Copilot AI linked an issue Jul 9, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Add support for exposing imex into the nspawn environment agent: expose NVIDIA IMEX channels in nspawn Jul 9, 2026
Copilot finished work on behalf of bcho July 9, 2026 23:46
Copilot AI requested a review from bcho July 9, 2026 23:46

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR extends the agent’s NVIDIA device handling so that NVIDIA IMEX channel device nodes (/dev/nvidia-caps-imex-channels/*) are discovered on the host and automatically exposed into systemd-nspawn machines (via Bind= and DeviceAllow=), enabling multi-node NVLink workloads to access configured IMEX channels.

Changes:

  • Extend NVIDIA device discovery to include IMEX channel devices under /dev/nvidia-caps-imex-channels/*.
  • Add targeted tests to verify both discovery and nspawn rendering include the IMEX device nodes.
  • Update nspawn documentation to mention IMEX channel exposure as part of NVIDIA GPU support.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
pkg/agent/phases/rootfs/nspawn_render_test.go Adds a rendering test to assert IMEX device paths appear in Bind= and DeviceAllow= outputs.
pkg/agent/goalstates/nvidia.go Updates NVIDIA device discovery to include IMEX channels and refactors discovery to support test injection.
pkg/agent/goalstates/nvidia_test.go Adds a unit test ensuring IMEX channel devices are returned by discovery.
docs/content/reference/agent/nspawn.md Documents IMEX channel devices as part of NVIDIA GPU exposure in nspawn.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread pkg/agent/phases/rootfs/nspawn_render_test.go
@bcho bcho marked this pull request as ready for review July 13, 2026 21:59
@bcho bcho requested a review from a team July 13, 2026 21:59
@bcho bcho enabled auto-merge July 13, 2026 22:00
bcho added 4 commits July 13, 2026 22:09
…-exposing-imex

# Conflicts:
#	pkg/agent/phases/rootfs/nspawn_render_test.go
…vices-support' into copilot/agent-support-exposing-imex
…-host-devices-support' into copilot/agent-support-exposing-imex"

This reverts commit 0921ef4, reversing
changes made to 64ce689.
@bcho bcho added this pull request to the merge queue Jul 14, 2026
Merged via the queue into main with commit d7f1faa Jul 14, 2026
25 checks passed
@bcho bcho deleted the copilot/agent-support-exposing-imex branch July 14, 2026 15:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

agent: support exposing imex into the nspawn env

4 participants