-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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 #15563
Conversation
One of the required tests failed, but since it is a Linux |
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. This version has the argument name in vfs.h fixed to match that of the name in spl_vfs.c, although it really does not matter. Signed-off-by: Rick Macklem <[email protected]>
@rmacklem Unfortunately some of the CI tests are not very stable lately. It can be unrelated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It got some review on FreeBSD side: https://reviews.freebsd.org/D42672 . I can not say much about the VFS code, but it looks OK.
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. This version has the argument name in vfs.h fixed to match that of the name in spl_vfs.c, although it really does not matter. External-issue: https://reviews.freebsd.org/D42672 Reviewed-by: Alexander Motin <[email protected]> Signed-off-by: Rick Macklem <[email protected]> Closes #15563
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. This version has the argument name in vfs.h fixed to match that of the name in spl_vfs.c, although it really does not matter. External-issue: https://reviews.freebsd.org/D42672 Reviewed-by: Alexander Motin <[email protected]> Signed-off-by: Rick Macklem <[email protected]> Closes openzfs#15563
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. This version has the argument name in vfs.h fixed to match that of the name in spl_vfs.c, although it really does not matter. External-issue: https://reviews.freebsd.org/D42672 Reviewed-by: Alexander Motin <[email protected]> Signed-off-by: Rick Macklem <[email protected]> Closes openzfs#15563
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.
Signed-off by: Rick Macklem [email protected]
Motivation and Context
Without this patch, newer versions of FreeBSD (post 13.2) cannot access
ZFS snapshots in .zfs/snapshot over NFS.
Description
Added a new argument to mount_snapshot() which is the parent
mount point so that vfs_exjail_clone() can be called with that
parent mount point.
vfs_exjail_clone() fills in mnt_exjail, so that the snapshot can
be accessed over NFS.
How Has This Been Tested?
An NFS mount of a dataset on a FreeBSD NFS server (post 13.2)
without this patch could not access the snapshots in .zfs/snapshot.
After applying this patch, the NFS client did access the snapshot
on .zfs/snapshot without difficulty.
Types of changes
Checklist:
Signed-off-by
.