diff --git a/sys/kern/vfs_default.c b/sys/kern/vfs_default.c index cc5603eb06e..0c423d2d2d6 100644 --- a/sys/kern/vfs_default.c +++ b/sys/kern/vfs_default.c @@ -801,4 +801,14 @@ vfs_stdextattrctl(mp, cmd, filename_vp, attrnamespace, attrname, td) return(EOPNOTSUPP); } +int +vfs_stdsysctl(mp, op, req) + struct mount *mp; + fsctlop_t op; + struct sysctl_req *req; +{ + + return (EOPNOTSUPP); +} + /* end of vfs default ops */ diff --git a/sys/kern/vfs_init.c b/sys/kern/vfs_init.c index b67ece7ffe1..871404c141f 100644 --- a/sys/kern/vfs_init.c +++ b/sys/kern/vfs_init.c @@ -458,6 +458,8 @@ vfs_register(struct vfsconf *vfc) if (vfsops->vfs_extattrctl == NULL) /* extended attribute control */ vfsops->vfs_extattrctl = vfs_stdextattrctl; + if (vfsops->vfs_sysctl == NULL) + vfsops->vfs_sysctl = vfs_stdsysctl; /* * Call init function for this VFS... diff --git a/sys/sys/mount.h b/sys/sys/mount.h index 3f8f098b204..fafdeac068d 100644 --- a/sys/sys/mount.h +++ b/sys/sys/mount.h @@ -526,8 +526,7 @@ struct vfsops { #define VFS_EXTATTRCTL(MP, C, FN, NS, N, P) \ (*(MP)->mnt_op->vfs_extattrctl)(MP, C, FN, NS, N, P) #define VFS_SYSCTL(MP, OP, REQ) \ - ((MP) == NULL ? ENOTSUP : \ - (*(MP)->mnt_op->vfs_sysctl)(MP, OP, REQ)) + (*(MP)->mnt_op->vfs_sysctl)(MP, OP, REQ) #include @@ -605,6 +604,7 @@ vfs_vptofh_t vfs_stdvptofh; vfs_init_t vfs_stdinit; vfs_uninit_t vfs_stduninit; vfs_extattrctl_t vfs_stdextattrctl; +vfs_sysctl_t vfs_stdsysctl; /* XXX - these should be indirect functions!!! */ int softdep_fsync(struct vnode *);