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

Fix ZFS on FreeBSD so that snapshots under .zfs/snapshot are NFS visible #15562

Closed
wants to merge 1 commit into from
Closed

Conversation

rmacklem
Copy link
Contributor

Make the snapshots under .zfs/snapshot visible to NFS clients

Motivation and Context

Without this patch, newer versions of FreeBSD (post 13.2) will not allow NFS
access to snapshots under .zfs/snapshot

Description

Add an argument to mount_snapshot() which is the parent mount and
then have mount_snapshot() call vfs_exjail_clone() to fill in the mnt_exjail
field of the new mount created by mount_snapshot().

How Has This Been Tested?

A FreeBSD system without the change was NFS mounted by a client and
was not able to access a snapshot under .zfs/snapshot. Once the FreeBSD
system was patched, a client that NFS mounted the was able to
access the snapshot under .zfs/snapshot.

Types of changes

  • [x ] Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Performance enhancement (non-breaking change which improves efficiency)
  • Code cleanup (non-breaking change which makes code smaller or more readable)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Library ABI change (libzfs, libzfs_core, libnvpair, libuutil and libzfsbootenv)
  • Documentation (a change to man pages or other documentation)

Checklist:

Call vfs_exjail_clone() for mounts created under .zfs/snapshot
to fill in the mnt_exjail field for the mount.  If this is not
done, the snapshots under .zfs/snapshot with not be accessible
over NFS.
@rmacklem rmacklem closed this Nov 23, 2023
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