summaryrefslogtreecommitdiff
path: root/sys/ufs/mfs
diff options
context:
space:
mode:
authorThordur I. Bjornsson <thib@cvs.openbsd.org>2010-09-10 16:34:10 +0000
committerThordur I. Bjornsson <thib@cvs.openbsd.org>2010-09-10 16:34:10 +0000
commit924988b6ec2a9e6a026b5489028ad504451931ac (patch)
tree1b3c600d98211e262609942c2f20c60816cd46ec /sys/ufs/mfs
parentdc82911ae9236515748693d3963bcf4c56827fcb (diff)
Backout the VOP diff until the issues naddy was seeing on alpha (gcc3)
have been resolved.
Diffstat (limited to 'sys/ufs/mfs')
-rw-r--r--sys/ufs/mfs/mfs_extern.h6
-rw-r--r--sys/ufs/mfs/mfs_vfsops.c6
-rw-r--r--sys/ufs/mfs/mfs_vnops.c82
3 files changed, 51 insertions, 43 deletions
diff --git a/sys/ufs/mfs/mfs_extern.h b/sys/ufs/mfs/mfs_extern.h
index 7dbd68e9028..2f6d498ce39 100644
--- a/sys/ufs/mfs/mfs_extern.h
+++ b/sys/ufs/mfs/mfs_extern.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: mfs_extern.h,v 1.16 2010/09/06 23:44:10 thib Exp $ */
+/* $OpenBSD: mfs_extern.h,v 1.17 2010/09/10 16:34:09 thib Exp $ */
/* $NetBSD: mfs_extern.h,v 1.4 1996/02/09 22:31:27 christos Exp $ */
/*-
@@ -43,8 +43,7 @@ struct vfsconf;
struct mbuf;
struct mfsnode;
-extern struct vops mfs_vops;
-
+__BEGIN_DECLS
/* mfs_vfsops.c */
int mfs_mount(struct mount *, const char *, void *, struct nameidata *,
struct proc *);
@@ -65,3 +64,4 @@ int mfs_print(void *);
#define mfs_revoke vop_generic_revoke
int mfs_badop(void *);
+__END_DECLS
diff --git a/sys/ufs/mfs/mfs_vfsops.c b/sys/ufs/mfs/mfs_vfsops.c
index 37b5dcdbdbc..763bbef813f 100644
--- a/sys/ufs/mfs/mfs_vfsops.c
+++ b/sys/ufs/mfs/mfs_vfsops.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mfs_vfsops.c,v 1.40 2010/09/06 23:44:10 thib Exp $ */
+/* $OpenBSD: mfs_vfsops.c,v 1.41 2010/09/10 16:34:09 thib Exp $ */
/* $NetBSD: mfs_vfsops.c,v 1.10 1996/02/09 22:31:28 christos Exp $ */
/*
@@ -57,6 +57,8 @@
static int mfs_minor; /* used for building internal dev_t */
+extern int (**mfs_vnodeop_p)(void *);
+
/*
* mfs vfs operations.
*/
@@ -122,7 +124,7 @@ mfs_mount(struct mount *mp, const char *path, void *data,
#endif
return (0);
}
- error = getnewvnode(VT_MFS, NULL, &mfs_vops, &devvp);
+ error = getnewvnode(VT_MFS, (struct mount *)0, mfs_vnodeop_p, &devvp);
if (error)
return (error);
devvp->v_type = VBLK;
diff --git a/sys/ufs/mfs/mfs_vnops.c b/sys/ufs/mfs/mfs_vnops.c
index ad7e4d0df83..246135e31e0 100644
--- a/sys/ufs/mfs/mfs_vnops.c
+++ b/sys/ufs/mfs/mfs_vnops.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mfs_vnops.c,v 1.38 2010/09/06 23:44:10 thib Exp $ */
+/* $OpenBSD: mfs_vnops.c,v 1.39 2010/09/10 16:34:09 thib Exp $ */
/* $NetBSD: mfs_vnops.c,v 1.8 1996/03/17 02:16:32 christos Exp $ */
/*
@@ -48,44 +48,50 @@
#include <ufs/mfs/mfsnode.h>
#include <ufs/mfs/mfs_extern.h>
-/* mfs vnode operations. */
-struct vops mfs_vops = {
- .vop_default = eopnotsupp,
- .vop_lookup = mfs_badop,
- .vop_create = mfs_badop,
- .vop_mknod = mfs_badop,
- .vop_open = mfs_open,
- .vop_close = mfs_close,
- .vop_access = mfs_badop,
- .vop_getattr = mfs_badop,
- .vop_setattr = mfs_badop,
- .vop_read = mfs_badop,
- .vop_write = mfs_badop,
- .vop_ioctl = mfs_ioctl,
- .vop_poll = mfs_badop,
- .vop_revoke = mfs_revoke,
- .vop_fsync = spec_fsync,
- .vop_remove = mfs_badop,
- .vop_link = mfs_badop,
- .vop_rename = mfs_badop,
- .vop_mkdir = mfs_badop,
- .vop_rmdir = mfs_badop,
- .vop_symlink = mfs_badop,
- .vop_readdir = mfs_badop,
- .vop_readlink = mfs_badop,
- .vop_abortop = mfs_badop,
- .vop_inactive = mfs_inactive,
- .vop_reclaim = mfs_reclaim,
- .vop_lock = vop_generic_lock,
- .vop_unlock = vop_generic_unlock,
- .vop_bmap = vop_generic_bmap,
- .vop_strategy = mfs_strategy,
- .vop_print = mfs_print,
- .vop_islocked = vop_generic_islocked,
- .vop_pathconf = mfs_badop,
- .vop_advlock = mfs_badop,
- .vop_bwrite = vop_generic_bwrite
+/*
+ * mfs vnode operations.
+ */
+int (**mfs_vnodeop_p)(void *);
+struct vnodeopv_entry_desc mfs_vnodeop_entries[] = {
+ { &vop_default_desc, eopnotsupp },
+ { &vop_lookup_desc, mfs_badop },
+ { &vop_create_desc, mfs_badop },
+ { &vop_mknod_desc, mfs_badop },
+ { &vop_open_desc, mfs_open },
+ { &vop_close_desc, mfs_close },
+ { &vop_access_desc, mfs_badop },
+ { &vop_getattr_desc, mfs_badop },
+ { &vop_setattr_desc, mfs_badop },
+ { &vop_read_desc, mfs_badop },
+ { &vop_write_desc, mfs_badop },
+ { &vop_ioctl_desc, mfs_ioctl },
+ { &vop_poll_desc, mfs_badop },
+ { &vop_revoke_desc, mfs_revoke },
+ { &vop_fsync_desc, spec_fsync },
+ { &vop_remove_desc, mfs_badop },
+ { &vop_link_desc, mfs_badop },
+ { &vop_rename_desc, mfs_badop },
+ { &vop_mkdir_desc, mfs_badop },
+ { &vop_rmdir_desc, mfs_badop },
+ { &vop_symlink_desc, mfs_badop },
+ { &vop_readdir_desc, mfs_badop },
+ { &vop_readlink_desc, mfs_badop },
+ { &vop_abortop_desc, mfs_badop },
+ { &vop_inactive_desc, mfs_inactive },
+ { &vop_reclaim_desc, mfs_reclaim },
+ { &vop_lock_desc, vop_generic_lock },
+ { &vop_unlock_desc, vop_generic_unlock },
+ { &vop_bmap_desc, vop_generic_bmap },
+ { &vop_strategy_desc, mfs_strategy },
+ { &vop_print_desc, mfs_print },
+ { &vop_islocked_desc, vop_generic_islocked },
+ { &vop_pathconf_desc, mfs_badop },
+ { &vop_advlock_desc, mfs_badop },
+ { &vop_bwrite_desc, vop_generic_bwrite },
+ { NULL, NULL }
};
+struct vnodeopv_desc mfs_vnodeop_opv_desc =
+ { &mfs_vnodeop_p, mfs_vnodeop_entries };
/*
* Vnode Operations.