Skip to content

fix(guest): disable the ZFS pool root mountpoint - #980

Open
kvinwang wants to merge 1 commit into
masterfrom
codex/fix-guest-zfs-root-mountpoint
Open

fix(guest): disable the ZFS pool root mountpoint#980
kvinwang wants to merge 1 commit into
masterfrom
codex/fix-guest-zfs-root-mountpoint

Conversation

@kvinwang

@kvinwang kvinwang commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Problem

A newly created ZFS pool inherits the default root-dataset mountpoint. This can mount the dstack pool root separately from the explicitly managed dstack/data dataset, creating an unintended mount in the guest filesystem.

Fix

Create the pool with -m none, leaving the pool root unmounted. Only dstack/data, whose mountpoint is explicitly configured by the guest setup code, is mounted.

Implementation

  • fix(guest): disable the ZFS pool root mountpoint

Changed path:

  • dstack/dstack-util/src/system_setup.rs

Scope

This PR is based directly on master and contains only the ZFS root-mountpoint change.

Verification

  • cargo test -p dstack-util --no-run: passed
  • git diff --check origin/master...HEAD: passed

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 updates the guest storage initialization logic to ensure the ZFS pool root dataset is never mounted, preventing unintended mounts in the guest filesystem and leaving only the explicitly managed dstack/data dataset mounted at the configured mount point.

Changes:

  • Create the ZFS pool with zpool create ... -m none so the pool root dataset has mountpoint=none.
  • Keep creating dstack/data with an explicit mountpoint (-o mountpoint=$mount_point) as the sole mounted dataset.

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

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.

2 participants