summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/fs/nfs
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/fs/nfs')
-rw-r--r--usr/src/uts/common/fs/nfs/nfs3_vfsops.c19
-rw-r--r--usr/src/uts/common/fs/nfs/nfs3_vnops.c84
-rw-r--r--usr/src/uts/common/fs/nfs/nfs4_srv.c37
-rw-r--r--usr/src/uts/common/fs/nfs/nfs4_vfsops.c21
-rw-r--r--usr/src/uts/common/fs/nfs/nfs4_vnops.c82
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_common.c5
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_vfsops.c19
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_vnops.c81
8 files changed, 179 insertions, 169 deletions
diff --git a/usr/src/uts/common/fs/nfs/nfs3_vfsops.c b/usr/src/uts/common/fs/nfs/nfs3_vfsops.c
index 4a3157ed0d..e02d3ab6bb 100644
--- a/usr/src/uts/common/fs/nfs/nfs3_vfsops.c
+++ b/usr/src/uts/common/fs/nfs/nfs3_vfsops.c
@@ -35,6 +35,7 @@
#include <sys/systm.h>
#include <sys/cred.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/vnode.h>
#include <sys/pathname.h>
#include <sys/sysmacros.h>
@@ -155,15 +156,15 @@ int
nfs3init(int fstyp, char *name)
{
static const fs_operation_def_t nfs3_vfsops_template[] = {
- VFSNAME_MOUNT, nfs3_mount,
- VFSNAME_UNMOUNT, nfs3_unmount,
- VFSNAME_ROOT, nfs3_root,
- VFSNAME_STATVFS, nfs3_statvfs,
- VFSNAME_SYNC, (fs_generic_func_p) nfs3_sync,
- VFSNAME_VGET, nfs3_vget,
- VFSNAME_MOUNTROOT, nfs3_mountroot,
- VFSNAME_FREEVFS, (fs_generic_func_p)nfs3_freevfs,
- NULL, NULL
+ VFSNAME_MOUNT, { .vfs_mount = nfs3_mount },
+ VFSNAME_UNMOUNT, { .vfs_unmount = nfs3_unmount },
+ VFSNAME_ROOT, { .vfs_root = nfs3_root },
+ VFSNAME_STATVFS, { .vfs_statvfs = nfs3_statvfs },
+ VFSNAME_SYNC, { .vfs_sync = nfs3_sync },
+ VFSNAME_VGET, { .vfs_vget = nfs3_vget },
+ VFSNAME_MOUNTROOT, { .vfs_mountroot = nfs3_mountroot },
+ VFSNAME_FREEVFS, { .vfs_freevfs = nfs3_freevfs },
+ NULL, NULL
};
int error;
diff --git a/usr/src/uts/common/fs/nfs/nfs3_vnops.c b/usr/src/uts/common/fs/nfs/nfs3_vnops.c
index 3b54de5ea7..7a9355b4a4 100644
--- a/usr/src/uts/common/fs/nfs/nfs3_vnops.c
+++ b/usr/src/uts/common/fs/nfs/nfs3_vnops.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -37,6 +37,7 @@
#include <sys/time.h>
#include <sys/vnode.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/file.h>
#include <sys/filio.h>
#include <sys/uio.h>
@@ -216,46 +217,47 @@ static int nfs3_shrlock(vnode_t *, int, struct shrlock *, int, cred_t *);
struct vnodeops *nfs3_vnodeops;
const fs_operation_def_t nfs3_vnodeops_template[] = {
- VOPNAME_OPEN, nfs3_open,
- VOPNAME_CLOSE, nfs3_close,
- VOPNAME_READ, nfs3_read,
- VOPNAME_WRITE, nfs3_write,
- VOPNAME_IOCTL, nfs3_ioctl,
- VOPNAME_GETATTR, nfs3_getattr,
- VOPNAME_SETATTR, nfs3_setattr,
- VOPNAME_ACCESS, nfs3_access,
- VOPNAME_LOOKUP, nfs3_lookup,
- VOPNAME_CREATE, nfs3_create,
- VOPNAME_REMOVE, nfs3_remove,
- VOPNAME_LINK, nfs3_link,
- VOPNAME_RENAME, nfs3_rename,
- VOPNAME_MKDIR, nfs3_mkdir,
- VOPNAME_RMDIR, nfs3_rmdir,
- VOPNAME_READDIR, nfs3_readdir,
- VOPNAME_SYMLINK, nfs3_symlink,
- VOPNAME_READLINK, nfs3_readlink,
- VOPNAME_FSYNC, nfs3_fsync,
- VOPNAME_INACTIVE, (fs_generic_func_p) nfs3_inactive,
- VOPNAME_FID, nfs3_fid,
- VOPNAME_RWLOCK, nfs3_rwlock,
- VOPNAME_RWUNLOCK, (fs_generic_func_p) nfs3_rwunlock,
- VOPNAME_SEEK, nfs3_seek,
- VOPNAME_FRLOCK, nfs3_frlock,
- VOPNAME_SPACE, nfs3_space,
- VOPNAME_REALVP, nfs3_realvp,
- VOPNAME_GETPAGE, nfs3_getpage,
- VOPNAME_PUTPAGE, nfs3_putpage,
- VOPNAME_MAP, (fs_generic_func_p) nfs3_map,
- VOPNAME_ADDMAP, (fs_generic_func_p) nfs3_addmap,
- VOPNAME_DELMAP, nfs3_delmap,
- VOPNAME_DUMP, nfs_dump, /* there is no separate nfs3_dump */
- VOPNAME_PATHCONF, nfs3_pathconf,
- VOPNAME_PAGEIO, nfs3_pageio,
- VOPNAME_DISPOSE, (fs_generic_func_p) nfs3_dispose,
- VOPNAME_SETSECATTR, nfs3_setsecattr,
- VOPNAME_GETSECATTR, nfs3_getsecattr,
- VOPNAME_SHRLOCK, nfs3_shrlock,
- NULL, NULL
+ VOPNAME_OPEN, { .vop_open = nfs3_open },
+ VOPNAME_CLOSE, { .vop_close = nfs3_close },
+ VOPNAME_READ, { .vop_read = nfs3_read },
+ VOPNAME_WRITE, { .vop_write = nfs3_write },
+ VOPNAME_IOCTL, { .vop_ioctl = nfs3_ioctl },
+ VOPNAME_GETATTR, { .vop_getattr = nfs3_getattr },
+ VOPNAME_SETATTR, { .vop_setattr = nfs3_setattr },
+ VOPNAME_ACCESS, { .vop_access = nfs3_access },
+ VOPNAME_LOOKUP, { .vop_lookup = nfs3_lookup },
+ VOPNAME_CREATE, { .vop_create = nfs3_create },
+ VOPNAME_REMOVE, { .vop_remove = nfs3_remove },
+ VOPNAME_LINK, { .vop_link = nfs3_link },
+ VOPNAME_RENAME, { .vop_rename = nfs3_rename },
+ VOPNAME_MKDIR, { .vop_mkdir = nfs3_mkdir },
+ VOPNAME_RMDIR, { .vop_rmdir = nfs3_rmdir },
+ VOPNAME_READDIR, { .vop_readdir = nfs3_readdir },
+ VOPNAME_SYMLINK, { .vop_symlink = nfs3_symlink },
+ VOPNAME_READLINK, { .vop_readlink = nfs3_readlink },
+ VOPNAME_FSYNC, { .vop_fsync = nfs3_fsync },
+ VOPNAME_INACTIVE, { .vop_inactive = nfs3_inactive },
+ VOPNAME_FID, { .vop_fid = nfs3_fid },
+ VOPNAME_RWLOCK, { .vop_rwlock = nfs3_rwlock },
+ VOPNAME_RWUNLOCK, { .vop_rwunlock = nfs3_rwunlock },
+ VOPNAME_SEEK, { .vop_seek = nfs3_seek },
+ VOPNAME_FRLOCK, { .vop_frlock = nfs3_frlock },
+ VOPNAME_SPACE, { .vop_space = nfs3_space },
+ VOPNAME_REALVP, { .vop_realvp = nfs3_realvp },
+ VOPNAME_GETPAGE, { .vop_getpage = nfs3_getpage },
+ VOPNAME_PUTPAGE, { .vop_putpage = nfs3_putpage },
+ VOPNAME_MAP, { .vop_map = nfs3_map },
+ VOPNAME_ADDMAP, { .vop_addmap = nfs3_addmap },
+ VOPNAME_DELMAP, { .vop_delmap = nfs3_delmap },
+ /* no separate nfs3_dump */
+ VOPNAME_DUMP, { .vop_dump = nfs_dump },
+ VOPNAME_PATHCONF, { .vop_pathconf = nfs3_pathconf },
+ VOPNAME_PAGEIO, { .vop_pageio = nfs3_pageio },
+ VOPNAME_DISPOSE, { .vop_dispose = nfs3_dispose },
+ VOPNAME_SETSECATTR, { .vop_setsecattr = nfs3_setsecattr },
+ VOPNAME_GETSECATTR, { .vop_getsecattr = nfs3_getsecattr },
+ VOPNAME_SHRLOCK, { .vop_shrlock = nfs3_shrlock },
+ NULL, NULL
};
/*
diff --git a/usr/src/uts/common/fs/nfs/nfs4_srv.c b/usr/src/uts/common/fs/nfs/nfs4_srv.c
index cd741c18c0..fd0ebe6f8e 100644
--- a/usr/src/uts/common/fs/nfs/nfs4_srv.c
+++ b/usr/src/uts/common/fs/nfs/nfs4_srv.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -36,6 +36,7 @@
#include <sys/cred.h>
#include <sys/buf.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/vnode.h>
#include <sys/uio.h>
#include <sys/errno.h>
@@ -475,25 +476,25 @@ extern size_t strlcpy(char *dst, const char *src, size_t dstsize);
#define nextdp(dp) ((struct dirent64 *)((char *)(dp) + (dp)->d_reclen))
static const fs_operation_def_t nfs4_rd_deleg_tmpl[] = {
- VOPNAME_OPEN, deleg_rdopen,
- VOPNAME_WRITE, deleg_write,
- VOPNAME_SETATTR, deleg_setattr,
- VOPNAME_RWLOCK, deleg_rd_rwlock,
- VOPNAME_SPACE, deleg_space,
- VOPNAME_SETSECATTR, deleg_setsecattr,
- VOPNAME_VNEVENT, deleg_vnevent,
- NULL, NULL
+ VOPNAME_OPEN, { .femop_open = deleg_rdopen },
+ VOPNAME_WRITE, { .femop_write = deleg_write },
+ VOPNAME_SETATTR, { .femop_setattr = deleg_setattr },
+ VOPNAME_RWLOCK, { .femop_rwlock = deleg_rd_rwlock },
+ VOPNAME_SPACE, { .femop_space = deleg_space },
+ VOPNAME_SETSECATTR, { .femop_setsecattr = deleg_setsecattr },
+ VOPNAME_VNEVENT, { .femop_vnevent = deleg_vnevent },
+ NULL, NULL
};
static const fs_operation_def_t nfs4_wr_deleg_tmpl[] = {
- VOPNAME_OPEN, deleg_wropen,
- VOPNAME_READ, deleg_read,
- VOPNAME_WRITE, deleg_write,
- VOPNAME_SETATTR, deleg_setattr,
- VOPNAME_RWLOCK, deleg_wr_rwlock,
- VOPNAME_SPACE, deleg_space,
- VOPNAME_SETSECATTR, deleg_setsecattr,
- VOPNAME_VNEVENT, deleg_vnevent,
- NULL, NULL
+ VOPNAME_OPEN, { .femop_open = deleg_wropen },
+ VOPNAME_READ, { .femop_read = deleg_read },
+ VOPNAME_WRITE, { .femop_write = deleg_write },
+ VOPNAME_SETATTR, { .femop_setattr = deleg_setattr },
+ VOPNAME_RWLOCK, { .femop_rwlock = deleg_wr_rwlock },
+ VOPNAME_SPACE, { .femop_space = deleg_space },
+ VOPNAME_SETSECATTR, { .femop_setsecattr = deleg_setsecattr },
+ VOPNAME_VNEVENT, { .femop_vnevent = deleg_vnevent },
+ NULL, NULL
};
int
diff --git a/usr/src/uts/common/fs/nfs/nfs4_vfsops.c b/usr/src/uts/common/fs/nfs/nfs4_vfsops.c
index 4bc1e88d5f..4f6719117f 100644
--- a/usr/src/uts/common/fs/nfs/nfs4_vfsops.c
+++ b/usr/src/uts/common/fs/nfs/nfs4_vfsops.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -35,6 +35,7 @@
#include <sys/systm.h>
#include <sys/cred.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/vnode.h>
#include <sys/pathname.h>
#include <sys/sysmacros.h>
@@ -175,15 +176,15 @@ int
nfs4init(int fstyp, char *name)
{
static const fs_operation_def_t nfs4_vfsops_template[] = {
- VFSNAME_MOUNT, nfs4_mount,
- VFSNAME_UNMOUNT, nfs4_unmount,
- VFSNAME_ROOT, nfs4_root,
- VFSNAME_STATVFS, nfs4_statvfs,
- VFSNAME_SYNC, (fs_generic_func_p) nfs4_sync,
- VFSNAME_VGET, nfs4_vget,
- VFSNAME_MOUNTROOT, nfs4_mountroot,
- VFSNAME_FREEVFS, (fs_generic_func_p)nfs4_freevfs,
- NULL, NULL
+ VFSNAME_MOUNT, { .vfs_mount = nfs4_mount },
+ VFSNAME_UNMOUNT, { .vfs_unmount = nfs4_unmount },
+ VFSNAME_ROOT, { .vfs_root = nfs4_root },
+ VFSNAME_STATVFS, { .vfs_statvfs = nfs4_statvfs },
+ VFSNAME_SYNC, { .vfs_sync = nfs4_sync },
+ VFSNAME_VGET, { .vfs_vget = nfs4_vget },
+ VFSNAME_MOUNTROOT, { .vfs_mountroot = nfs4_mountroot },
+ VFSNAME_FREEVFS, { .vfs_freevfs = nfs4_freevfs },
+ NULL, NULL
};
int error;
diff --git a/usr/src/uts/common/fs/nfs/nfs4_vnops.c b/usr/src/uts/common/fs/nfs/nfs4_vnops.c
index ba1155d523..36786c3514 100644
--- a/usr/src/uts/common/fs/nfs/nfs4_vnops.c
+++ b/usr/src/uts/common/fs/nfs/nfs4_vnops.c
@@ -37,6 +37,7 @@
#include <sys/time.h>
#include <sys/vnode.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/file.h>
#include <sys/filio.h>
#include <sys/uio.h>
@@ -363,46 +364,47 @@ static int nfs4_pathconf_disable_cache = 0;
struct vnodeops *nfs4_vnodeops;
const fs_operation_def_t nfs4_vnodeops_template[] = {
- VOPNAME_OPEN, nfs4_open,
- VOPNAME_CLOSE, nfs4_close,
- VOPNAME_READ, nfs4_read,
- VOPNAME_WRITE, nfs4_write,
- VOPNAME_IOCTL, nfs4_ioctl,
- VOPNAME_GETATTR, nfs4_getattr,
- VOPNAME_SETATTR, nfs4_setattr,
- VOPNAME_ACCESS, nfs4_access,
- VOPNAME_LOOKUP, nfs4_lookup,
- VOPNAME_CREATE, nfs4_create,
- VOPNAME_REMOVE, nfs4_remove,
- VOPNAME_LINK, nfs4_link,
- VOPNAME_RENAME, nfs4_rename,
- VOPNAME_MKDIR, nfs4_mkdir,
- VOPNAME_RMDIR, nfs4_rmdir,
- VOPNAME_READDIR, nfs4_readdir,
- VOPNAME_SYMLINK, nfs4_symlink,
- VOPNAME_READLINK, nfs4_readlink,
- VOPNAME_FSYNC, nfs4_fsync,
- VOPNAME_INACTIVE, (fs_generic_func_p) nfs4_inactive,
- VOPNAME_FID, nfs4_fid,
- VOPNAME_RWLOCK, nfs4_rwlock,
- VOPNAME_RWUNLOCK, (fs_generic_func_p) nfs4_rwunlock,
- VOPNAME_SEEK, nfs4_seek,
- VOPNAME_FRLOCK, nfs4_frlock,
- VOPNAME_SPACE, nfs4_space,
- VOPNAME_REALVP, nfs4_realvp,
- VOPNAME_GETPAGE, nfs4_getpage,
- VOPNAME_PUTPAGE, nfs4_putpage,
- VOPNAME_MAP, (fs_generic_func_p) nfs4_map,
- VOPNAME_ADDMAP, (fs_generic_func_p) nfs4_addmap,
- VOPNAME_DELMAP, nfs4_delmap,
- VOPNAME_DUMP, nfs_dump, /* there is no separate nfs4_dump */
- VOPNAME_PATHCONF, nfs4_pathconf,
- VOPNAME_PAGEIO, nfs4_pageio,
- VOPNAME_DISPOSE, (fs_generic_func_p) nfs4_dispose,
- VOPNAME_SETSECATTR, nfs4_setsecattr,
- VOPNAME_GETSECATTR, nfs4_getsecattr,
- VOPNAME_SHRLOCK, nfs4_shrlock,
- NULL, NULL
+ VOPNAME_OPEN, { .vop_open = nfs4_open },
+ VOPNAME_CLOSE, { .vop_close = nfs4_close },
+ VOPNAME_READ, { .vop_read = nfs4_read },
+ VOPNAME_WRITE, { .vop_write = nfs4_write },
+ VOPNAME_IOCTL, { .vop_ioctl = nfs4_ioctl },
+ VOPNAME_GETATTR, { .vop_getattr = nfs4_getattr },
+ VOPNAME_SETATTR, { .vop_setattr = nfs4_setattr },
+ VOPNAME_ACCESS, { .vop_access = nfs4_access },
+ VOPNAME_LOOKUP, { .vop_lookup = nfs4_lookup },
+ VOPNAME_CREATE, { .vop_create = nfs4_create },
+ VOPNAME_REMOVE, { .vop_remove = nfs4_remove },
+ VOPNAME_LINK, { .vop_link = nfs4_link },
+ VOPNAME_RENAME, { .vop_rename = nfs4_rename },
+ VOPNAME_MKDIR, { .vop_mkdir = nfs4_mkdir },
+ VOPNAME_RMDIR, { .vop_rmdir = nfs4_rmdir },
+ VOPNAME_READDIR, { .vop_readdir = nfs4_readdir },
+ VOPNAME_SYMLINK, { .vop_symlink = nfs4_symlink },
+ VOPNAME_READLINK, { .vop_readlink = nfs4_readlink },
+ VOPNAME_FSYNC, { .vop_fsync = nfs4_fsync },
+ VOPNAME_INACTIVE, { .vop_inactive = nfs4_inactive },
+ VOPNAME_FID, { .vop_fid = nfs4_fid },
+ VOPNAME_RWLOCK, { .vop_rwlock = nfs4_rwlock },
+ VOPNAME_RWUNLOCK, { .vop_rwunlock = nfs4_rwunlock },
+ VOPNAME_SEEK, { .vop_seek = nfs4_seek },
+ VOPNAME_FRLOCK, { .vop_frlock = nfs4_frlock },
+ VOPNAME_SPACE, { .vop_space = nfs4_space },
+ VOPNAME_REALVP, { .vop_realvp = nfs4_realvp },
+ VOPNAME_GETPAGE, { .vop_getpage = nfs4_getpage },
+ VOPNAME_PUTPAGE, { .vop_putpage = nfs4_putpage },
+ VOPNAME_MAP, { .vop_map = nfs4_map },
+ VOPNAME_ADDMAP, { .vop_addmap = nfs4_addmap },
+ VOPNAME_DELMAP, { .vop_delmap = nfs4_delmap },
+ /* no separate nfs4_dump */
+ VOPNAME_DUMP, { .vop_dump = nfs_dump },
+ VOPNAME_PATHCONF, { .vop_pathconf = nfs4_pathconf },
+ VOPNAME_PAGEIO, { .vop_pageio = nfs4_pageio },
+ VOPNAME_DISPOSE, { .vop_dispose = nfs4_dispose },
+ VOPNAME_SETSECATTR, { .vop_setsecattr = nfs4_setsecattr },
+ VOPNAME_GETSECATTR, { .vop_getsecattr = nfs4_getsecattr },
+ VOPNAME_SHRLOCK, { .vop_shrlock = nfs4_shrlock },
+ NULL, NULL
};
/*
diff --git a/usr/src/uts/common/fs/nfs/nfs_common.c b/usr/src/uts/common/fs/nfs/nfs_common.c
index 3d3eecd82a..ded7c5075c 100644
--- a/usr/src/uts/common/fs/nfs/nfs_common.c
+++ b/usr/src/uts/common/fs/nfs/nfs_common.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -38,6 +38,7 @@
#include <sys/time.h>
#include <sys/utsname.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/vnode.h>
#include <sys/pathname.h>
#include <sys/bootconf.h>
@@ -336,7 +337,7 @@ static int
nfsdyninit(int fstyp, char *name)
{
static const fs_operation_def_t nfsdyn_vfsops_template[] = {
- VFSNAME_MOUNTROOT, nfsdyn_mountroot,
+ VFSNAME_MOUNTROOT, { .vfs_mountroot = nfsdyn_mountroot },
NULL, NULL
};
int error;
diff --git a/usr/src/uts/common/fs/nfs/nfs_vfsops.c b/usr/src/uts/common/fs/nfs/nfs_vfsops.c
index 5b16b20228..e6c3a4f7c4 100644
--- a/usr/src/uts/common/fs/nfs/nfs_vfsops.c
+++ b/usr/src/uts/common/fs/nfs/nfs_vfsops.c
@@ -33,6 +33,7 @@
#include <sys/systm.h>
#include <sys/cred.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/vnode.h>
#include <sys/pathname.h>
#include <sys/sysmacros.h>
@@ -157,15 +158,15 @@ int
nfsinit(int fstyp, char *name)
{
static const fs_operation_def_t nfs_vfsops_template[] = {
- VFSNAME_MOUNT, nfs_mount,
- VFSNAME_UNMOUNT, nfs_unmount,
- VFSNAME_ROOT, nfs_root,
- VFSNAME_STATVFS, nfs_statvfs,
- VFSNAME_SYNC, (fs_generic_func_p) nfs_sync,
- VFSNAME_VGET, nfs_vget,
- VFSNAME_MOUNTROOT, nfs_mountroot,
- VFSNAME_FREEVFS, (fs_generic_func_p)nfs_freevfs,
- NULL, NULL
+ VFSNAME_MOUNT, { .vfs_mount = nfs_mount },
+ VFSNAME_UNMOUNT, { .vfs_unmount = nfs_unmount },
+ VFSNAME_ROOT, { .vfs_root = nfs_root },
+ VFSNAME_STATVFS, { .vfs_statvfs = nfs_statvfs },
+ VFSNAME_SYNC, { .vfs_sync = nfs_sync },
+ VFSNAME_VGET, { .vfs_vget = nfs_vget },
+ VFSNAME_MOUNTROOT, { .vfs_mountroot = nfs_mountroot },
+ VFSNAME_FREEVFS, { .vfs_freevfs = nfs_freevfs },
+ NULL, NULL
};
int error;
diff --git a/usr/src/uts/common/fs/nfs/nfs_vnops.c b/usr/src/uts/common/fs/nfs/nfs_vnops.c
index 583ce42473..5e587027d7 100644
--- a/usr/src/uts/common/fs/nfs/nfs_vnops.c
+++ b/usr/src/uts/common/fs/nfs/nfs_vnops.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
* Copyright (c) 1983,1984,1985,1986,1987,1988,1989 AT&T.
@@ -35,6 +35,7 @@
#include <sys/time.h>
#include <sys/vnode.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/file.h>
#include <sys/filio.h>
#include <sys/uio.h>
@@ -179,45 +180,45 @@ static int nfs_shrlock(vnode_t *, int, struct shrlock *, int, cred_t *);
struct vnodeops *nfs_vnodeops;
const fs_operation_def_t nfs_vnodeops_template[] = {
- VOPNAME_OPEN, nfs_open,
- VOPNAME_CLOSE, nfs_close,
- VOPNAME_READ, nfs_read,
- VOPNAME_WRITE, nfs_write,
- VOPNAME_IOCTL, nfs_ioctl,
- VOPNAME_GETATTR, nfs_getattr,
- VOPNAME_SETATTR, nfs_setattr,
- VOPNAME_ACCESS, nfs_access,
- VOPNAME_LOOKUP, nfs_lookup,
- VOPNAME_CREATE, nfs_create,
- VOPNAME_REMOVE, nfs_remove,
- VOPNAME_LINK, nfs_link,
- VOPNAME_RENAME, nfs_rename,
- VOPNAME_MKDIR, nfs_mkdir,
- VOPNAME_RMDIR, nfs_rmdir,
- VOPNAME_READDIR, nfs_readdir,
- VOPNAME_SYMLINK, nfs_symlink,
- VOPNAME_READLINK, nfs_readlink,
- VOPNAME_FSYNC, nfs_fsync,
- VOPNAME_INACTIVE, (fs_generic_func_p) nfs_inactive,
- VOPNAME_FID, nfs_fid,
- VOPNAME_RWLOCK, nfs_rwlock,
- VOPNAME_RWUNLOCK, (fs_generic_func_p) nfs_rwunlock,
- VOPNAME_SEEK, nfs_seek,
- VOPNAME_FRLOCK, nfs_frlock,
- VOPNAME_SPACE, nfs_space,
- VOPNAME_REALVP, nfs_realvp,
- VOPNAME_GETPAGE, nfs_getpage,
- VOPNAME_PUTPAGE, nfs_putpage,
- VOPNAME_MAP, (fs_generic_func_p) nfs_map,
- VOPNAME_ADDMAP, (fs_generic_func_p) nfs_addmap,
- VOPNAME_DELMAP, nfs_delmap,
- VOPNAME_DUMP, nfs_dump,
- VOPNAME_PATHCONF, nfs_pathconf,
- VOPNAME_PAGEIO, nfs_pageio,
- VOPNAME_SETSECATTR, nfs_setsecattr,
- VOPNAME_GETSECATTR, nfs_getsecattr,
- VOPNAME_SHRLOCK, nfs_shrlock,
- NULL, NULL
+ VOPNAME_OPEN, { .vop_open = nfs_open },
+ VOPNAME_CLOSE, { .vop_close = nfs_close },
+ VOPNAME_READ, { .vop_read = nfs_read },
+ VOPNAME_WRITE, { .vop_write = nfs_write },
+ VOPNAME_IOCTL, { .vop_ioctl = nfs_ioctl },
+ VOPNAME_GETATTR, { .vop_getattr = nfs_getattr },
+ VOPNAME_SETATTR, { .vop_setattr = nfs_setattr },
+ VOPNAME_ACCESS, { .vop_access = nfs_access },
+ VOPNAME_LOOKUP, { .vop_lookup = nfs_lookup },
+ VOPNAME_CREATE, { .vop_create = nfs_create },
+ VOPNAME_REMOVE, { .vop_remove = nfs_remove },
+ VOPNAME_LINK, { .vop_link = nfs_link },
+ VOPNAME_RENAME, { .vop_rename = nfs_rename },
+ VOPNAME_MKDIR, { .vop_mkdir = nfs_mkdir },
+ VOPNAME_RMDIR, { .vop_rmdir = nfs_rmdir },
+ VOPNAME_READDIR, { .vop_readdir = nfs_readdir },
+ VOPNAME_SYMLINK, { .vop_symlink = nfs_symlink },
+ VOPNAME_READLINK, { .vop_readlink = nfs_readlink },
+ VOPNAME_FSYNC, { .vop_fsync = nfs_fsync },
+ VOPNAME_INACTIVE, { .vop_inactive = nfs_inactive },
+ VOPNAME_FID, { .vop_fid = nfs_fid },
+ VOPNAME_RWLOCK, { .vop_rwlock = nfs_rwlock },
+ VOPNAME_RWUNLOCK, { .vop_rwunlock = nfs_rwunlock },
+ VOPNAME_SEEK, { .vop_seek = nfs_seek },
+ VOPNAME_FRLOCK, { .vop_frlock = nfs_frlock },
+ VOPNAME_SPACE, { .vop_space = nfs_space },
+ VOPNAME_REALVP, { .vop_realvp = nfs_realvp },
+ VOPNAME_GETPAGE, { .vop_getpage = nfs_getpage },
+ VOPNAME_PUTPAGE, { .vop_putpage = nfs_putpage },
+ VOPNAME_MAP, { .vop_map = nfs_map },
+ VOPNAME_ADDMAP, { .vop_addmap = nfs_addmap },
+ VOPNAME_DELMAP, { .vop_delmap = nfs_delmap },
+ VOPNAME_DUMP, { .vop_dump = nfs_dump },
+ VOPNAME_PATHCONF, { .vop_pathconf = nfs_pathconf },
+ VOPNAME_PAGEIO, { .vop_pageio = nfs_pageio },
+ VOPNAME_SETSECATTR, { .vop_setsecattr = nfs_setsecattr },
+ VOPNAME_GETSECATTR, { .vop_getsecattr = nfs_getsecattr },
+ VOPNAME_SHRLOCK, { .vop_shrlock = nfs_shrlock },
+ NULL, NULL
};
/*