DEVEL15-solaris-nevada-update-20071101
authorDale Ghent <daleg@umbc.edu>
Thu, 1 Nov 2007 16:57:37 +0000 (16:57 +0000)
committerDerrick Brashear <shadow@dementia.org>
Thu, 1 Nov 2007 16:57:37 +0000 (16:57 +0000)
FIXES 75896

update for current solaris nevada

(cherry picked from commit 7a0df48baf351eb2aaa2b6c4da0054d111facdb9)

src/afs/SOLARIS/osi_vfsops.c
src/afs/SOLARIS/osi_vnodeops.c

index e17d6d6..482e210 100644 (file)
@@ -21,6 +21,9 @@ RCSID
 #include "afs/afs_stats.h"     /* statistics stuff */
 #include "h/modctl.h"
 #include "h/syscall.h"
+#if defined(AFS_SUN511_ENV)
+#include <sys/vfs_opreg.h>
+#endif
 #include <sys/kobj.h>
 
 
@@ -245,7 +248,21 @@ afs_swapvp(struct vfs *afsp, struct vnode **avpp, char *nm)
 }
 
 
-#ifdef AFS_SUN510_ENV
+#if defined(AFS_SUN511_ENV)
+/* The following list must always be NULL-terminated */
+static const fs_operation_def_t afs_vfsops_template[] = {
+    VFSNAME_MOUNT,             { .vfs_mount = afs_mount },
+    VFSNAME_UNMOUNT,           { .vfs_unmount = afs_unmount },
+    VFSNAME_ROOT,              { .vfs_root = afs_root },
+    VFSNAME_STATVFS,           { .vfs_statvfs = afs_statvfs },
+    VFSNAME_SYNC,              { .vfs_sync = afs_sync },
+    VFSNAME_VGET,              { .vfs_vget = afs_vget },
+    VFSNAME_MOUNTROOT,         { .vfs_mountroot = afs_mountroot },
+    VFSNAME_FREEVFS,           { .vfs_freevfs = fs_freevfs },
+    NULL,                      NULL
+};
+struct vfsops *afs_vfsopsp;
+#elif defined(AFS_SUN510_ENV)
 /* The following list must always be NULL-terminated */
 const fs_operation_def_t afs_vfsops_template[] = {
     VFSNAME_MOUNT,             afs_mount,
@@ -256,7 +273,7 @@ const fs_operation_def_t afs_vfsops_template[] = {
     VFSNAME_VGET,              afs_vget,
     VFSNAME_MOUNTROOT,         afs_mountroot,
     VFSNAME_FREEVFS,           fs_freevfs,
-    NULL,                     NULL
+    NULL,                      NULL
 };
 struct vfsops *afs_vfsopsp;
 #else
index 05b0273..2c636c2 100644 (file)
@@ -47,6 +47,9 @@ RCSID
 #include <vm/seg_map.h>
 #include <vm/seg_vn.h>
 #include <vm/rm.h>
+#if defined(AFS_SUN511_ENV)
+#include <sys/vfs_opreg.h>
+#endif
 #include <sys/modctl.h>
 #include <sys/syscall.h>
 #include <sys/debug.h>
@@ -1441,7 +1444,56 @@ extern int gafs_fid(), gafs_readlink(), fs_setfl(), afs_pathconf();
 extern int afs_lockctl();
 extern void gafs_inactive();
 
-#ifdef AFS_SUN510_ENV
+#if defined(AFS_SUN511_ENV)
+/* The following list must always be NULL-terminated */
+const fs_operation_def_t afs_vnodeops_template[] = {
+    VOPNAME_OPEN,              { .vop_open = gafs_open },
+    VOPNAME_CLOSE,             { .vop_close = gafs_close },
+    VOPNAME_READ,              { .vop_read = afs_vmread },
+    VOPNAME_WRITE,             { .vop_write = afs_vmwrite },
+    VOPNAME_IOCTL,             { .vop_ioctl = afs_ioctl },
+    VOPNAME_SETFL,             { .vop_setfl = fs_setfl },
+    VOPNAME_GETATTR,           { .vop_getattr = gafs_getattr },
+    VOPNAME_SETATTR,           { .vop_setattr = gafs_setattr },
+    VOPNAME_ACCESS,            { .vop_access = gafs_access },
+    VOPNAME_LOOKUP,            { .vop_lookup = gafs_lookup },
+    VOPNAME_CREATE,            { .vop_create = gafs_create },
+    VOPNAME_REMOVE,            { .vop_remove = gafs_remove },
+    VOPNAME_LINK,              { .vop_link = gafs_link },
+    VOPNAME_RENAME,            { .vop_rename = gafs_rename },
+    VOPNAME_MKDIR,             { .vop_mkdir = gafs_mkdir },
+    VOPNAME_RMDIR,             { .vop_rmdir = gafs_rmdir },
+    VOPNAME_READDIR,           { .vop_readdir = gafs_readdir },
+    VOPNAME_SYMLINK,           { .vop_symlink = gafs_symlink },   
+    VOPNAME_READLINK,          { .vop_readlink = gafs_readlink },
+    VOPNAME_FSYNC,             { .vop_fsync = gafs_fsync },
+    VOPNAME_INACTIVE,          { .vop_inactive = gafs_inactive },
+    VOPNAME_FID,               { .vop_fid = gafs_fid },
+    VOPNAME_RWLOCK,            { .vop_rwlock = afs_rwlock },
+    VOPNAME_RWUNLOCK,          { .vop_rwunlock = afs_rwunlock },
+    VOPNAME_SEEK,              { .vop_seek = afs_seek },
+    VOPNAME_CMP,               { .vop_cmp = afs_cmp },
+    VOPNAME_FRLOCK,            { .vop_frlock = afs_frlock },
+    VOPNAME_SPACE,             { .vop_space = afs_space },
+    VOPNAME_REALVP,            { .vop_realvp = afs_realvp },
+    VOPNAME_GETPAGE,           { .vop_getpage = afs_getpage },
+    VOPNAME_PUTPAGE,           { .vop_putpage = afs_putpage },
+    VOPNAME_MAP,               { .vop_map = afs_map },
+    VOPNAME_ADDMAP,            { .vop_addmap = afs_addmap },
+    VOPNAME_DELMAP,            { .vop_delmap = afs_delmap },
+    VOPNAME_POLL,              { .vop_poll = fs_poll },
+    VOPNAME_PATHCONF,          { .vop_pathconf = afs_pathconf },
+    VOPNAME_PAGEIO,            { .vop_pageio = afs_pageio },
+    VOPNAME_DUMP,              { .vop_dump = afs_dump },
+    VOPNAME_DUMPCTL,           { .vop_dumpctl = afs_dumpctl },   
+    VOPNAME_DISPOSE,           { .vop_dispose = afs_dispose },
+    VOPNAME_GETSECATTR,                { .vop_getsecattr = afs_getsecattr },
+    VOPNAME_SETSECATTR,        { .vop_setsecattr = afs_setsecattr },
+    VOPNAME_SHRLOCK,           { .vop_shrlock = fs_shrlock },
+    NULL,                      NULL
+};
+vnodeops_t *afs_ops;
+#elif defined(AFS_SUN510_ENV)
 /* The following list must always be NULL-terminated */
 const fs_operation_def_t afs_vnodeops_template[] = {
     VOPNAME_OPEN,              gafs_open,