diff options
-rw-r--r-- | sys/miscfs/fifofs/fifo.h | 25 | ||||
-rw-r--r-- | sys/miscfs/fifofs/fifo_vnops.c | 44 | ||||
-rw-r--r-- | sys/miscfs/portal/portal_vnops.c | 69 | ||||
-rw-r--r-- | sys/miscfs/procfs/procfs_vnops.c | 44 | ||||
-rw-r--r-- | sys/ufs/mfs/mfs_vnops.c | 52 | ||||
-rw-r--r-- | sys/ufs/mfs/mfsnode.h | 35 |
6 files changed, 89 insertions, 180 deletions
diff --git a/sys/miscfs/fifofs/fifo.h b/sys/miscfs/fifofs/fifo.h index d83d145435b..b5056876774 100644 --- a/sys/miscfs/fifofs/fifo.h +++ b/sys/miscfs/fifofs/fifo.h @@ -1,4 +1,4 @@ -/* $OpenBSD: fifo.h,v 1.17 2007/12/27 13:59:12 thib Exp $ */ +/* $OpenBSD: fifo.h,v 1.18 2008/04/24 17:39:45 thib Exp $ */ /* $NetBSD: fifo.h,v 1.10 1996/02/09 22:40:15 christos Exp $ */ /* @@ -39,44 +39,21 @@ int fifo_badop(void *); int fifo_ebadf(void *); -#define fifo_create fifo_badop -#define fifo_mknod fifo_badop int fifo_open(void *); int fifo_close(void *); -#define fifo_access fifo_ebadf -#define fifo_getattr fifo_ebadf -#define fifo_setattr fifo_ebadf int fifo_read(void *); int fifo_write(void *); int fifo_ioctl(void *); int fifo_poll(void *); int fifo_kqfilter(void *); -#define fifo_fsync nullop -#define fifo_remove fifo_badop -#define fifo_revoke vop_generic_revoke -#define fifo_link fifo_badop -#define fifo_rename fifo_badop -#define fifo_mkdir fifo_badop -#define fifo_rmdir fifo_badop -#define fifo_symlink fifo_badop -#define fifo_readdir fifo_badop -#define fifo_readlink fifo_badop -#define fifo_abortop fifo_badop int fifo_inactive(void *); int fifo_reclaim(void *); -#define fifo_lock vop_generic_lock -#define fifo_unlock vop_generic_unlock int fifo_bmap(void *); -#define fifo_strategy fifo_badop int fifo_print(void *); -#define fifo_islocked vop_generic_islocked int fifo_pathconf(void *); int fifo_advlock(void *); -#define fifo_reallocblks fifo_badop -#define fifo_bwrite nullop void fifo_printinfo(struct vnode *); - int fifo_vnoperate(void *); extern int (**fifo_vnodeop_p)(void *); diff --git a/sys/miscfs/fifofs/fifo_vnops.c b/sys/miscfs/fifofs/fifo_vnops.c index cfee73b3922..e301bd3fc20 100644 --- a/sys/miscfs/fifofs/fifo_vnops.c +++ b/sys/miscfs/fifofs/fifo_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: fifo_vnops.c,v 1.26 2007/12/27 13:59:12 thib Exp $ */ +/* $OpenBSD: fifo_vnops.c,v 1.27 2008/04/24 17:39:45 thib Exp $ */ /* $NetBSD: fifo_vnops.c,v 1.18 1996/03/16 23:52:42 christos Exp $ */ /* @@ -65,40 +65,40 @@ int (**fifo_vnodeop_p)(void *); struct vnodeopv_entry_desc fifo_vnodeop_entries[] = { { &vop_default_desc, vn_default_error }, { &vop_lookup_desc, vop_generic_lookup }, /* lookup */ - { &vop_create_desc, fifo_create }, /* create */ - { &vop_mknod_desc, fifo_mknod }, /* mknod */ + { &vop_create_desc, fifo_badop }, /* create */ + { &vop_mknod_desc, fifo_badop }, /* mknod */ { &vop_open_desc, fifo_open }, /* open */ { &vop_close_desc, fifo_close }, /* close */ - { &vop_access_desc, fifo_access }, /* access */ - { &vop_getattr_desc, fifo_getattr }, /* getattr */ - { &vop_setattr_desc, fifo_setattr }, /* setattr */ + { &vop_access_desc, fifo_ebadf }, /* access */ + { &vop_getattr_desc, fifo_ebadf }, /* getattr */ + { &vop_setattr_desc, fifo_ebadf }, /* setattr */ { &vop_read_desc, fifo_read }, /* read */ { &vop_write_desc, fifo_write }, /* write */ { &vop_ioctl_desc, fifo_ioctl }, /* ioctl */ { &vop_poll_desc, fifo_poll }, /* poll */ { &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */ - { &vop_revoke_desc, fifo_revoke }, /* revoke */ - { &vop_fsync_desc, fifo_fsync }, /* fsync */ - { &vop_remove_desc, fifo_remove }, /* remove */ - { &vop_link_desc, fifo_link }, /* link */ - { &vop_rename_desc, fifo_rename }, /* rename */ - { &vop_mkdir_desc, fifo_mkdir }, /* mkdir */ - { &vop_rmdir_desc, fifo_rmdir }, /* rmdir */ - { &vop_symlink_desc, fifo_symlink }, /* symlink */ - { &vop_readdir_desc, fifo_readdir }, /* readdir */ - { &vop_readlink_desc, fifo_readlink }, /* readlink */ - { &vop_abortop_desc, fifo_abortop }, /* abortop */ + { &vop_revoke_desc, vop_generic_revoke }, /* revoke */ + { &vop_fsync_desc, nullop }, /* fsync */ + { &vop_remove_desc, fifo_badop }, /* remove */ + { &vop_link_desc, fifo_badop }, /* link */ + { &vop_rename_desc, fifo_badop }, /* rename */ + { &vop_mkdir_desc, fifo_badop }, /* mkdir */ + { &vop_rmdir_desc, fifo_badop }, /* rmdir */ + { &vop_symlink_desc, fifo_badop }, /* symlink */ + { &vop_readdir_desc, fifo_badop }, /* readdir */ + { &vop_readlink_desc, fifo_badop }, /* readlink */ + { &vop_abortop_desc, fifo_badop }, /* abortop */ { &vop_inactive_desc, fifo_inactive }, /* inactive */ { &vop_reclaim_desc, fifo_reclaim }, /* reclaim */ - { &vop_lock_desc, fifo_lock }, /* lock */ - { &vop_unlock_desc, fifo_unlock }, /* unlock */ + { &vop_lock_desc, vop_generic_lock }, /* lock */ + { &vop_unlock_desc, vop_generic_unlock }, /* unlock */ { &vop_bmap_desc, fifo_bmap }, /* bmap */ - { &vop_strategy_desc, fifo_strategy }, /* strategy */ + { &vop_strategy_desc, fifo_badop }, /* strategy */ { &vop_print_desc, fifo_print }, /* print */ - { &vop_islocked_desc, fifo_islocked }, /* islocked */ + { &vop_islocked_desc, vop_generic_islocked }, /* islocked */ { &vop_pathconf_desc, fifo_pathconf }, /* pathconf */ { &vop_advlock_desc, fifo_advlock }, /* advlock */ - { &vop_bwrite_desc, fifo_bwrite }, /* bwrite */ + { &vop_bwrite_desc, nullop }, /* bwrite */ { NULL, NULL } }; diff --git a/sys/miscfs/portal/portal_vnops.c b/sys/miscfs/portal/portal_vnops.c index aeb33c7d401..c420bb2fad5 100644 --- a/sys/miscfs/portal/portal_vnops.c +++ b/sys/miscfs/portal/portal_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: portal_vnops.c,v 1.25 2007/10/29 15:38:00 chl Exp $ */ +/* $OpenBSD: portal_vnops.c,v 1.26 2008/04/24 17:39:45 thib Exp $ */ /* $NetBSD: portal_vnops.c,v 1.17 1996/02/13 13:12:57 mycroft Exp $ */ /* @@ -68,79 +68,58 @@ static void portal_closefd(struct proc *, int); static int portal_connect(struct socket *, struct socket *); -int portal_badop(void *); +int portal_badop(void *); int portal_lookup(void *); -#define portal_create eopnotsupp -#define portal_mknod eopnotsupp int portal_open(void *); -#define portal_close nullop -#define portal_access nullop int portal_getattr(void *); int portal_setattr(void *); -#define portal_read eopnotsupp -#define portal_write eopnotsupp -#define portal_ioctl (int (*)(void *))enoioctl -#define portal_fsync nullop -#define portal_remove eopnotsupp int portal_link(void *); -#define portal_rename eopnotsupp -#define portal_mkdir eopnotsupp -#define portal_rmdir eopnotsupp int portal_symlink(void *); int portal_readdir(void *); -#define portal_revoke vop_generic_revoke -#define portal_readlink eopnotsupp int portal_inactive(void *); int portal_reclaim(void *); -#define portal_lock vop_generic_lock -#define portal_unlock vop_generic_unlock -#define portal_bmap portal_badop -#define portal_strategy portal_badop int portal_print(void *); -#define portal_islocked vop_generic_islocked int portal_pathconf(void *); -#define portal_advlock eopnotsupp -#define portal_bwrite eopnotsupp int portal_poll(void *); int (**portal_vnodeop_p)(void *); struct vnodeopv_entry_desc portal_vnodeop_entries[] = { { &vop_default_desc, vn_default_error }, { &vop_lookup_desc, portal_lookup }, /* lookup */ - { &vop_create_desc, portal_create }, /* create */ - { &vop_mknod_desc, portal_mknod }, /* mknod */ + { &vop_create_desc, eopnotsupp }, /* create */ + { &vop_mknod_desc, eopnotsupp }, /* mknod */ { &vop_open_desc, portal_open }, /* open */ - { &vop_close_desc, portal_close }, /* close */ - { &vop_access_desc, portal_access }, /* access */ + { &vop_close_desc, nullop }, /* close */ + { &vop_access_desc, nullop }, /* access */ { &vop_getattr_desc, portal_getattr }, /* getattr */ { &vop_setattr_desc, portal_setattr }, /* setattr */ - { &vop_read_desc, portal_read }, /* read */ - { &vop_write_desc, portal_write }, /* write */ - { &vop_ioctl_desc, portal_ioctl }, /* ioctl */ + { &vop_read_desc, eopnotsupp }, /* read */ + { &vop_write_desc, eopnotsupp }, /* write */ + { &vop_ioctl_desc, (int (*)(void *))enoioctl }, /* ioctl */ { &vop_poll_desc, portal_poll }, /* poll */ - { &vop_revoke_desc, portal_revoke }, /* revoke */ - { &vop_fsync_desc, portal_fsync }, /* fsync */ - { &vop_remove_desc, portal_remove }, /* remove */ + { &vop_revoke_desc, vop_generic_revoke }, /* revoke */ + { &vop_fsync_desc, nullop }, /* fsync */ + { &vop_remove_desc, eopnotsupp }, /* remove */ { &vop_link_desc, portal_link }, /* link */ - { &vop_rename_desc, portal_rename }, /* rename */ - { &vop_mkdir_desc, portal_mkdir }, /* mkdir */ - { &vop_rmdir_desc, portal_rmdir }, /* rmdir */ + { &vop_rename_desc, eopnotsupp }, /* rename */ + { &vop_mkdir_desc, eopnotsupp }, /* mkdir */ + { &vop_rmdir_desc, eopnotsupp }, /* rmdir */ { &vop_symlink_desc, portal_symlink }, /* symlink */ { &vop_readdir_desc, portal_readdir }, /* readdir */ - { &vop_readlink_desc, portal_readlink }, /* readlink */ - { &vop_abortop_desc, vop_generic_abortop }, /* abortop */ + { &vop_readlink_desc, eopnotsupp }, /* readlink */ + { &vop_abortop_desc, vop_generic_abortop }, /* abortop */ { &vop_inactive_desc, portal_inactive }, /* inactive */ { &vop_reclaim_desc, portal_reclaim }, /* reclaim */ - { &vop_lock_desc, portal_lock }, /* lock */ - { &vop_unlock_desc, portal_unlock }, /* unlock */ - { &vop_bmap_desc, portal_bmap }, /* bmap */ - { &vop_strategy_desc, portal_strategy }, /* strategy */ + { &vop_lock_desc, vop_generic_lock }, /* lock */ + { &vop_unlock_desc, vop_generic_unlock }, /* unlock */ + { &vop_bmap_desc, portal_badop }, /* bmap */ + { &vop_strategy_desc, portal_badop }, /* strategy */ { &vop_print_desc, portal_print }, /* print */ - { &vop_islocked_desc, portal_islocked }, /* islocked */ + { &vop_islocked_desc, vop_generic_islocked }, /* islocked */ { &vop_pathconf_desc, portal_pathconf }, /* pathconf */ - { &vop_advlock_desc, portal_advlock }, /* advlock */ - { &vop_bwrite_desc, portal_bwrite }, /* bwrite */ + { &vop_advlock_desc, eopnotsupp }, /* advlock */ + { &vop_bwrite_desc, eopnotsupp }, /* bwrite */ { NULL, NULL } }; struct vnodeopv_desc portal_vnodeop_opv_desc = diff --git a/sys/miscfs/procfs/procfs_vnops.c b/sys/miscfs/procfs/procfs_vnops.c index 8d5226ff42c..ad7cd98aed0 100644 --- a/sys/miscfs/procfs/procfs_vnops.c +++ b/sys/miscfs/procfs/procfs_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: procfs_vnops.c,v 1.41 2007/09/01 15:14:44 martin Exp $ */ +/* $OpenBSD: procfs_vnops.c,v 1.42 2008/04/24 17:39:45 thib Exp $ */ /* $NetBSD: procfs_vnops.c,v 1.40 1996/03/16 23:52:55 christos Exp $ */ /* @@ -118,35 +118,21 @@ static pid_t atopid(const char *, u_int); int procfs_badop(void *); int procfs_lookup(void *); -#define procfs_create procfs_badop -#define procfs_mknod procfs_badop int procfs_open(void *); int procfs_close(void *); int procfs_access(void *); int procfs_getattr(void *); int procfs_setattr(void *); -#define procfs_read procfs_rw -#define procfs_write procfs_rw int procfs_ioctl(void *); -#define procfs_fsync procfs_badop -#define procfs_remove procfs_badop int procfs_link(void *); -#define procfs_rename procfs_badop -#define procfs_mkdir procfs_badop -#define procfs_rmdir procfs_badop int procfs_symlink(void *); int procfs_readdir(void *); int procfs_readlink(void *); int procfs_inactive(void *); int procfs_reclaim(void *); -#define procfs_lock nullop -#define procfs_unlock nullop int procfs_bmap(void *); -#define procfs_strategy procfs_badop int procfs_print(void *); int procfs_pathconf(void *); -#define procfs_islocked nullop -#define procfs_advlock procfs_badop static pid_t atopid(const char *, u_int); @@ -157,37 +143,37 @@ int (**procfs_vnodeop_p)(void *); struct vnodeopv_entry_desc procfs_vnodeop_entries[] = { { &vop_default_desc, vn_default_error }, { &vop_lookup_desc, procfs_lookup }, /* lookup */ - { &vop_create_desc, procfs_create }, /* create */ - { &vop_mknod_desc, procfs_mknod }, /* mknod */ + { &vop_create_desc, procfs_badop }, /* create */ + { &vop_mknod_desc, procfs_badop }, /* mknod */ { &vop_open_desc, procfs_open }, /* open */ { &vop_close_desc, procfs_close }, /* close */ { &vop_access_desc, procfs_access }, /* access */ { &vop_getattr_desc, procfs_getattr }, /* getattr */ { &vop_setattr_desc, procfs_setattr }, /* setattr */ - { &vop_read_desc, procfs_read }, /* read */ - { &vop_write_desc, procfs_write }, /* write */ + { &vop_read_desc, procfs_rw }, /* read */ + { &vop_write_desc, procfs_rw }, /* write */ { &vop_ioctl_desc, procfs_ioctl }, /* ioctl */ { &vop_poll_desc, procfs_poll }, /* poll */ - { &vop_fsync_desc, procfs_fsync }, /* fsync */ - { &vop_remove_desc, procfs_remove }, /* remove */ + { &vop_fsync_desc, procfs_badop}, /* fsync */ + { &vop_remove_desc, procfs_badop }, /* remove */ { &vop_link_desc, procfs_link }, /* link */ - { &vop_rename_desc, procfs_rename }, /* rename */ - { &vop_mkdir_desc, procfs_mkdir }, /* mkdir */ - { &vop_rmdir_desc, procfs_rmdir }, /* rmdir */ + { &vop_rename_desc, procfs_badop }, /* rename */ + { &vop_mkdir_desc, procfs_badop }, /* mkdir */ + { &vop_rmdir_desc, procfs_badop }, /* rmdir */ { &vop_symlink_desc, procfs_symlink }, /* symlink */ { &vop_readdir_desc, procfs_readdir }, /* readdir */ { &vop_readlink_desc, procfs_readlink }, /* readlink */ { &vop_abortop_desc, vop_generic_abortop }, /* abortop */ { &vop_inactive_desc, procfs_inactive }, /* inactive */ { &vop_reclaim_desc, procfs_reclaim }, /* reclaim */ - { &vop_lock_desc, procfs_lock }, /* lock */ - { &vop_unlock_desc, procfs_unlock }, /* unlock */ + { &vop_lock_desc, nullop }, /* lock */ + { &vop_unlock_desc, nullop }, /* unlock */ { &vop_bmap_desc, procfs_bmap }, /* bmap */ - { &vop_strategy_desc, procfs_strategy }, /* strategy */ + { &vop_strategy_desc, procfs_badop }, /* strategy */ { &vop_print_desc, procfs_print }, /* print */ - { &vop_islocked_desc, procfs_islocked }, /* islocked */ + { &vop_islocked_desc, nullop }, /* islocked */ { &vop_pathconf_desc, procfs_pathconf }, /* pathconf */ - { &vop_advlock_desc, procfs_advlock }, /* advlock */ + { &vop_advlock_desc, procfs_badop }, /* advlock */ { NULL, NULL } }; struct vnodeopv_desc procfs_vnodeop_opv_desc = diff --git a/sys/ufs/mfs/mfs_vnops.c b/sys/ufs/mfs/mfs_vnops.c index 317d4759f73..5f1071c6ef4 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.32 2007/12/16 21:21:25 otto Exp $ */ +/* $OpenBSD: mfs_vnops.c,v 1.33 2008/04/24 17:39:45 thib Exp $ */ /* $NetBSD: mfs_vnops.c,v 1.8 1996/03/17 02:16:32 christos Exp $ */ /* @@ -54,41 +54,41 @@ int (**mfs_vnodeop_p)(void *); struct vnodeopv_entry_desc mfs_vnodeop_entries[] = { { &vop_default_desc, vn_default_error }, - { &vop_lookup_desc, mfs_lookup }, /* lookup */ - { &vop_create_desc, mfs_create }, /* create */ - { &vop_mknod_desc, mfs_mknod }, /* mknod */ + { &vop_lookup_desc, mfs_badop }, /* lookup */ + { &vop_create_desc, mfs_badop }, /* create */ + { &vop_mknod_desc, mfs_badop }, /* mknod */ { &vop_open_desc, mfs_open }, /* open */ { &vop_close_desc, mfs_close }, /* close */ - { &vop_access_desc, mfs_access }, /* access */ - { &vop_getattr_desc, mfs_getattr }, /* getattr */ - { &vop_setattr_desc, mfs_setattr }, /* setattr */ - { &vop_read_desc, mfs_read }, /* read */ - { &vop_write_desc, mfs_write }, /* write */ + { &vop_access_desc, mfs_badop }, /* access */ + { &vop_getattr_desc, mfs_badop }, /* getattr */ + { &vop_setattr_desc, mfs_badop }, /* setattr */ + { &vop_read_desc, mfs_badop }, /* read */ + { &vop_write_desc, mfs_badop }, /* write */ { &vop_ioctl_desc, mfs_ioctl }, /* ioctl */ - { &vop_poll_desc, mfs_poll }, /* poll */ + { &vop_poll_desc, mfs_badop }, /* poll */ { &vop_revoke_desc, mfs_revoke }, /* revoke */ { &vop_fsync_desc, spec_fsync }, /* fsync */ - { &vop_remove_desc, mfs_remove }, /* remove */ - { &vop_link_desc, mfs_link }, /* link */ - { &vop_rename_desc, mfs_rename }, /* rename */ - { &vop_mkdir_desc, mfs_mkdir }, /* mkdir */ - { &vop_rmdir_desc, mfs_rmdir }, /* rmdir */ - { &vop_symlink_desc, mfs_symlink }, /* symlink */ - { &vop_readdir_desc, mfs_readdir }, /* readdir */ - { &vop_readlink_desc, mfs_readlink }, /* readlink */ - { &vop_abortop_desc, mfs_abortop }, /* abortop */ + { &vop_remove_desc, mfs_badop }, /* remove */ + { &vop_link_desc, mfs_badop }, /* link */ + { &vop_rename_desc, mfs_badop }, /* rename */ + { &vop_mkdir_desc, mfs_badop }, /* mkdir */ + { &vop_rmdir_desc, mfs_badop }, /* rmdir */ + { &vop_symlink_desc, mfs_badop }, /* symlink */ + { &vop_readdir_desc, mfs_badop }, /* readdir */ + { &vop_readlink_desc, mfs_badop }, /* readlink */ + { &vop_abortop_desc, mfs_badop }, /* abortop */ { &vop_inactive_desc, mfs_inactive }, /* inactive */ { &vop_reclaim_desc, mfs_reclaim }, /* reclaim */ - { &vop_lock_desc, mfs_lock }, /* lock */ - { &vop_unlock_desc, mfs_unlock }, /* unlock */ + { &vop_lock_desc, vop_generic_lock }, /* lock */ + { &vop_unlock_desc, vop_generic_unlock }, /* unlock */ { &vop_bmap_desc, mfs_bmap }, /* bmap */ { &vop_strategy_desc, mfs_strategy }, /* strategy */ { &vop_print_desc, mfs_print }, /* print */ - { &vop_islocked_desc, mfs_islocked }, /* islocked */ - { &vop_pathconf_desc, mfs_pathconf }, /* pathconf */ - { &vop_advlock_desc, mfs_advlock }, /* advlock */ - { &vop_bwrite_desc, mfs_bwrite }, /* bwrite */ - { (struct vnodeop_desc*)NULL, (int(*)(void *))NULL } + { &vop_islocked_desc, vop_generic_islocked }, /* islocked */ + { &vop_pathconf_desc, mfs_badop }, /* pathconf */ + { &vop_advlock_desc, mfs_badop }, /* advlock */ + { &vop_bwrite_desc, vop_generic_bwrite }, /* bwrite */ + { NULL, NULL } }; struct vnodeopv_desc mfs_vnodeop_opv_desc = { &mfs_vnodeop_p, mfs_vnodeop_entries }; diff --git a/sys/ufs/mfs/mfsnode.h b/sys/ufs/mfs/mfsnode.h index 6b41318ec7b..0b55f07007e 100644 --- a/sys/ufs/mfs/mfsnode.h +++ b/sys/ufs/mfs/mfsnode.h @@ -1,4 +1,4 @@ -/* $OpenBSD: mfsnode.h,v 1.11 2003/09/23 16:51:13 millert Exp $ */ +/* $OpenBSD: mfsnode.h,v 1.12 2008/04/24 17:39:45 thib Exp $ */ /* $NetBSD: mfsnode.h,v 1.3 1996/02/09 22:31:31 christos Exp $ */ /* @@ -50,36 +50,3 @@ struct mfsnode { */ #define VTOMFS(vp) ((struct mfsnode *)(vp)->v_data) #define MFSTOV(mfsp) ((mfsp)->mfs_vnode) - -/* Prototypes for MFS operations on vnodes. */ -#define mfs_lookup mfs_badop -#define mfs_create mfs_badop -#define mfs_mknod mfs_badop -#define mfs_access mfs_badop -#define mfs_getattr mfs_badop -#define mfs_setattr mfs_badop -#define mfs_read mfs_badop -#define mfs_write mfs_badop -#define mfs_poll mfs_badop -#define mfs_mmap mfs_badop -#define mfs_seek mfs_badop -#define mfs_remove mfs_badop -#define mfs_link mfs_badop -#define mfs_rename mfs_badop -#define mfs_mkdir mfs_badop -#define mfs_rmdir mfs_badop -#define mfs_symlink mfs_badop -#define mfs_readdir mfs_badop -#define mfs_readlink mfs_badop -#define mfs_abortop mfs_badop -#define mfs_lock vop_generic_lock -#define mfs_unlock vop_generic_unlock -#define mfs_islocked vop_generic_islocked -#define mfs_pathconf mfs_badop -#define mfs_advlock mfs_badop -#define mfs_blkatoff mfs_badop -#define mfs_valloc mfs_badop -#define mfs_vfree mfs_badop -#define mfs_truncate mfs_badop -#define mfs_update nullop -#define mfs_bwrite vop_generic_bwrite |