svn commit: r366717 - head/sys/contrib/openzfs/module/os/freebsd/zfs
Mateusz Guzik
mjg at FreeBSD.org
Thu Oct 15 04:49:35 UTC 2020
Author: mjg
Date: Thu Oct 15 04:49:34 2020
New Revision: 366717
URL: https://svnweb.freebsd.org/changeset/base/366717
Log:
zfs: add missing fplookup vops
Some vnodes come with a hack which inherits the fplookup flag despite having vops
which don't provide the routine.
Reported by: YAMAMOTO Shigeru <shigeru at os-hackers.jp>
Modified:
head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c
head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c
Modified: head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c
==============================================================================
--- head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c Thu Oct 15 04:48:14 2020 (r366716)
+++ head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c Thu Oct 15 04:49:34 2020 (r366717)
@@ -798,6 +798,7 @@ zfsctl_common_getacl(struct vop_getacl_args *ap)
static struct vop_vector zfsctl_ops_root = {
.vop_default = &default_vnodeops,
+ .vop_fplookup_vexec = VOP_EAGAIN,
.vop_open = zfsctl_common_open,
.vop_close = zfsctl_common_close,
.vop_ioctl = VOP_EINVAL,
@@ -1115,6 +1116,7 @@ zfsctl_snapdir_getattr(struct vop_getattr_args *ap)
static struct vop_vector zfsctl_ops_snapdir = {
.vop_default = &default_vnodeops,
+ .vop_fplookup_vexec = VOP_EAGAIN,
.vop_open = zfsctl_common_open,
.vop_close = zfsctl_common_close,
.vop_getattr = zfsctl_snapdir_getattr,
@@ -1216,6 +1218,7 @@ zfsctl_snapshot_vptocnp(struct vop_vptocnp_args *ap)
*/
static struct vop_vector zfsctl_ops_snapshot = {
.vop_default = NULL, /* ensure very restricted access */
+ .vop_fplookup_vexec = VOP_EAGAIN,
.vop_inactive = zfsctl_snapshot_inactive,
#if __FreeBSD_version >= 1300045
.vop_need_inactive = vop_stdneed_inactive,
Modified: head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c
==============================================================================
--- head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c Thu Oct 15 04:48:14 2020 (r366716)
+++ head/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c Thu Oct 15 04:49:34 2020 (r366717)
@@ -6619,6 +6619,7 @@ VFS_VOP_VECTOR_REGISTER(zfs_fifoops);
*/
struct vop_vector zfs_shareops = {
.vop_default = &default_vnodeops,
+ .vop_fplookup_vexec = VOP_EAGAIN,
.vop_access = zfs_freebsd_access,
.vop_inactive = zfs_freebsd_inactive,
.vop_reclaim = zfs_freebsd_reclaim,
More information about the svn-src-head
mailing list