summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1997-10-16 10:50:27 +0000
committerphk <phk@FreeBSD.org>1997-10-16 10:50:27 +0000
commitd166441755d9516e482ede0d988b7989be25b10a (patch)
treead2fb706565dc877eddf12a6581bfa2467513503
parentefcfb5d9cd2ecb3d30ec4c7701bfe737dc1b4606 (diff)
downloadFreeBSD-src-d166441755d9516e482ede0d988b7989be25b10a.zip
FreeBSD-src-d166441755d9516e482ede0d988b7989be25b10a.tar.gz
VFS mega cleanup commit (x/N)
1. Add new file "sys/kern/vfs_default.c" where default actions for VOPs go. Implement proper defaults for ABORTOP, BWRITE, LEASE, POLL, REVOKE and STRATEGY. Various stuff spread over the entire tree belongs here. 2. Change VOP_BLKATOFF to a normal function in cd9660. 3. Kill VOP_BLKATOFF, VOP_TRUNCATE, VOP_VFREE, VOP_VALLOC. These are private interface functions between UFS and the underlying storage manager layer (FFS/LFS/MFS/EXT2FS). The functions now live in struct ufsmount instead. 4. Remove a kludge of VOP_ functions in all filesystems, that did nothing but obscure the simplicity and break the expandability. If a filesystem doesn't implement VOP_FOO, it shouldn't have an entry for it in its vnops table. The system will try to DTRT if it is not implemented. There are still some cruft left, but the bulk of it is done. 5. Fix another VCALL in vfs_cache.c (thanks Bruce!)
-rw-r--r--sys/conf/files1
-rw-r--r--sys/fs/cd9660/cd9660_lookup.c34
-rw-r--r--sys/fs/cd9660/cd9660_node.c6
-rw-r--r--sys/fs/cd9660/cd9660_node.h5
-rw-r--r--sys/fs/cd9660/cd9660_vfsops.c6
-rw-r--r--sys/fs/cd9660/cd9660_vnops.c69
-rw-r--r--sys/fs/deadfs/dead_vnops.c107
-rw-r--r--sys/fs/fdescfs/fdesc_vnops.c85
-rw-r--r--sys/fs/fifofs/fifo_vnops.c9
-rw-r--r--sys/fs/msdosfs/msdosfs_vnops.c3
-rw-r--r--sys/fs/portalfs/portal_vnops.c100
-rw-r--r--sys/fs/procfs/procfs_vnops.c71
-rw-r--r--sys/fs/specfs/spec_vnops.c11
-rw-r--r--sys/gnu/ext2fs/ext2_alloc.c43
-rw-r--r--sys/gnu/ext2fs/ext2_extern.h8
-rw-r--r--sys/gnu/ext2fs/ext2_inode.c29
-rw-r--r--sys/gnu/ext2fs/ext2_lookup.c14
-rw-r--r--sys/gnu/ext2fs/ext2_mount.h11
-rw-r--r--sys/gnu/ext2fs/ext2_readwrite.c2
-rw-r--r--sys/gnu/ext2fs/ext2_subr.c26
-rw-r--r--sys/gnu/ext2fs/ext2_vfsops.c4
-rw-r--r--sys/gnu/ext2fs/ext2_vnops.c7
-rw-r--r--sys/gnu/fs/ext2fs/ext2_alloc.c43
-rw-r--r--sys/gnu/fs/ext2fs/ext2_extern.h8
-rw-r--r--sys/gnu/fs/ext2fs/ext2_inode.c29
-rw-r--r--sys/gnu/fs/ext2fs/ext2_lookup.c14
-rw-r--r--sys/gnu/fs/ext2fs/ext2_mount.h11
-rw-r--r--sys/gnu/fs/ext2fs/ext2_readwrite.c2
-rw-r--r--sys/gnu/fs/ext2fs/ext2_subr.c26
-rw-r--r--sys/gnu/fs/ext2fs/ext2_vfsops.c4
-rw-r--r--sys/gnu/fs/ext2fs/ext2_vnops.c7
-rw-r--r--sys/isofs/cd9660/cd9660_lookup.c34
-rw-r--r--sys/isofs/cd9660/cd9660_node.c6
-rw-r--r--sys/isofs/cd9660/cd9660_node.h5
-rw-r--r--sys/isofs/cd9660/cd9660_vfsops.c6
-rw-r--r--sys/isofs/cd9660/cd9660_vnops.c69
-rw-r--r--sys/kern/vfs_cache.c5
-rw-r--r--sys/kern/vfs_init.c15
-rw-r--r--sys/kern/vnode_if.src42
-rw-r--r--sys/miscfs/deadfs/dead_vnops.c107
-rw-r--r--sys/miscfs/devfs/devfs_vnops.c95
-rw-r--r--sys/miscfs/fdesc/fdesc_vnops.c85
-rw-r--r--sys/miscfs/fifofs/fifo_vnops.c9
-rw-r--r--sys/miscfs/kernfs/kernfs_vnops.c86
-rw-r--r--sys/miscfs/portal/portal_vnops.c100
-rw-r--r--sys/miscfs/procfs/procfs_vnops.c71
-rw-r--r--sys/miscfs/specfs/spec_vnops.c11
-rw-r--r--sys/msdosfs/msdosfs_vnops.c3
-rw-r--r--sys/nfs/nfs_vnops.c27
-rw-r--r--sys/nfs/nfsnode.h8
-rw-r--r--sys/nfsclient/nfs_vnops.c27
-rw-r--r--sys/nfsclient/nfsnode.h8
-rw-r--r--sys/sys/vnode.h15
-rw-r--r--sys/ufs/ffs/ffs_alloc.c42
-rw-r--r--sys/ufs/ffs/ffs_extern.h11
-rw-r--r--sys/ufs/ffs/ffs_inode.c29
-rw-r--r--sys/ufs/ffs/ffs_subr.c28
-rw-r--r--sys/ufs/ffs/ffs_vfsops.c6
-rw-r--r--sys/ufs/ffs/ffs_vnops.c8
-rw-r--r--sys/ufs/lfs/lfs_alloc.c34
-rw-r--r--sys/ufs/lfs/lfs_extern.h12
-rw-r--r--sys/ufs/lfs/lfs_inode.c20
-rw-r--r--sys/ufs/lfs/lfs_subr.c28
-rw-r--r--sys/ufs/lfs/lfs_vnops.c10
-rw-r--r--sys/ufs/mfs/mfs_extern.h4
-rw-r--r--sys/ufs/mfs/mfs_vnops.c39
-rw-r--r--sys/ufs/mfs/mfsnode.h35
-rw-r--r--sys/ufs/ufs/ufs_extern.h9
-rw-r--r--sys/ufs/ufs/ufs_inode.c6
-rw-r--r--sys/ufs/ufs/ufs_lookup.c18
-rw-r--r--sys/ufs/ufs/ufs_readwrite.c4
-rw-r--r--sys/ufs/ufs/ufs_vnops.c34
-rw-r--r--sys/ufs/ufs/ufsmount.h11
73 files changed, 526 insertions, 1491 deletions
diff --git a/sys/conf/files b/sys/conf/files
index fc74ac4..c7c8c99 100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@ -136,6 +136,7 @@ kern/vfs_bio.c standard
kern/vfs_cache.c standard
kern/vfs_cluster.c standard
kern/vfs_conf.c standard
+kern/vfs_default.c standard
kern/vfs_init.c standard
kern/vfs_lookup.c standard
kern/vfs_subr.c standard
diff --git a/sys/fs/cd9660/cd9660_lookup.c b/sys/fs/cd9660/cd9660_lookup.c
index d416a98..cf36e92 100644
--- a/sys/fs/cd9660/cd9660_lookup.c
+++ b/sys/fs/cd9660/cd9660_lookup.c
@@ -38,7 +38,7 @@
* from: @(#)ufs_lookup.c 7.33 (Berkeley) 5/19/91
*
* @(#)cd9660_lookup.c 8.2 (Berkeley) 1/23/94
- * $Id: cd9660_lookup.c,v 1.17 1997/08/26 07:32:30 phk Exp $
+ * $Id: cd9660_lookup.c,v 1.18 1997/09/10 19:43:15 phk Exp $
*/
#include <sys/param.h>
@@ -165,7 +165,7 @@ cd9660_lookup(ap)
} else {
dp->i_offset = dp->i_diroff;
if ((entryoffsetinblock = dp->i_offset & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
+ (error = cd9660_blkatoff(vdp, (off_t)dp->i_offset, NULL, &bp)))
return (error);
numdirpasses = 2;
nchstats.ncs_2passes++;
@@ -183,7 +183,7 @@ searchloop:
if (bp != NULL)
brelse(bp);
if (error =
- VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp))
+ cd9660_blkatoff(vdp, (off_t)dp->i_offset, NULL, &bp))
return (error);
entryoffsetinblock = 0;
}
@@ -280,7 +280,7 @@ foundino:
lblkno(imp, saveoffset)) {
if (bp != NULL)
brelse(bp);
- if (error = VOP_BLKATOFF(vdp,
+ if (error = cd9660_blkatoff(vdp,
(off_t)saveoffset, NULL, &bp))
return (error);
}
@@ -394,13 +394,11 @@ found:
* remaining space in the directory.
*/
int
-cd9660_blkatoff(ap)
- struct vop_blkatoff_args /* {
- struct vnode *a_vp;
- off_t a_offset;
- char **a_res;
- struct buf **a_bpp;
- } */ *ap;
+cd9660_blkatoff(vp, offset, res, bpp)
+ struct vnode *vp;
+ off_t offset;
+ char **res;
+ struct buf **bpp;
{
struct iso_node *ip;
register struct iso_mnt *imp;
@@ -408,18 +406,18 @@ cd9660_blkatoff(ap)
daddr_t lbn;
int bsize, error;
- ip = VTOI(ap->a_vp);
+ ip = VTOI(vp);
imp = ip->i_mnt;
- lbn = lblkno(imp, ap->a_offset);
+ lbn = lblkno(imp, offset);
bsize = blksize(imp, ip, lbn);
- if (error = bread(ap->a_vp, lbn, bsize, NOCRED, &bp)) {
+ if (error = bread(vp, lbn, bsize, NOCRED, &bp)) {
brelse(bp);
- *ap->a_bpp = NULL;
+ *bpp = NULL;
return (error);
}
- if (ap->a_res)
- *ap->a_res = (char *)bp->b_data + blkoff(imp, ap->a_offset);
- *ap->a_bpp = bp;
+ if (res)
+ *res = (char *)bp->b_data + blkoff(imp, offset);
+ *bpp = bp;
return (0);
}
diff --git a/sys/fs/cd9660/cd9660_node.c b/sys/fs/cd9660/cd9660_node.c
index 8db9633..0ac56f8 100644
--- a/sys/fs/cd9660/cd9660_node.c
+++ b/sys/fs/cd9660/cd9660_node.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_node.c 8.2 (Berkeley) 1/23/94
- * $Id: cd9660_node.c,v 1.19 1997/04/14 18:15:45 phk Exp $
+ * $Id: cd9660_node.c,v 1.20 1997/08/02 14:31:18 bde Exp $
*/
#include <sys/param.h>
@@ -241,7 +241,7 @@ cd9660_defattr(isodir, inop, bp, ftype)
if (!bp
&& ((imp = inop->i_mnt)->im_flags & ISOFSMNT_EXTATT)
&& (off = isonum_711(isodir->ext_attr_length))) {
- VOP_BLKATOFF(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
+ cd9660_blkatoff(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
&bp2);
bp = bp2;
}
@@ -293,7 +293,7 @@ cd9660_deftstamp(isodir,inop,bp,ftype)
if (!bp
&& ((imp = inop->i_mnt)->im_flags & ISOFSMNT_EXTATT)
&& (off = isonum_711(isodir->ext_attr_length))) {
- VOP_BLKATOFF(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
+ cd9660_blkatoff(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
&bp2);
bp = bp2;
}
diff --git a/sys/fs/cd9660/cd9660_node.h b/sys/fs/cd9660/cd9660_node.h
index 92e214f..5c0b721 100644
--- a/sys/fs/cd9660/cd9660_node.h
+++ b/sys/fs/cd9660/cd9660_node.h
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_node.h 8.6 (Berkeley) 5/14/95
- * $Id: cd9660_node.h,v 1.12 1997/08/26 07:32:31 phk Exp $
+ * $Id: cd9660_node.h,v 1.13 1997/10/12 20:23:36 phk Exp $
*/
/*
@@ -105,8 +105,7 @@ int cd9660_inactive __P((struct vop_inactive_args *));
int cd9660_reclaim __P((struct vop_reclaim_args *));
int cd9660_bmap __P((struct vop_bmap_args *));
int cd9660_pathconf __P((struct vop_pathconf_args *));
-int cd9660_blkatoff __P((struct vop_blkatoff_args *));
-#define cd9660_revoke vop_revoke
+int cd9660_blkatoff __P((struct vnode *vp, off_t offset, char **res, struct buf **bpp));
void cd9660_defattr __P((struct iso_directory_record *,
struct iso_node *, struct buf *, enum ISO_FTYPE));
diff --git a/sys/fs/cd9660/cd9660_vfsops.c b/sys/fs/cd9660/cd9660_vfsops.c
index 3d23f09..d3db4a1 100644
--- a/sys/fs/cd9660/cd9660_vfsops.c
+++ b/sys/fs/cd9660/cd9660_vfsops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_vfsops.c 8.18 (Berkeley) 5/22/95
- * $Id: cd9660_vfsops.c,v 1.29 1997/09/27 13:38:48 kato Exp $
+ * $Id: cd9660_vfsops.c,v 1.30 1997/10/12 20:23:38 phk Exp $
*/
#include <sys/param.h>
@@ -765,7 +765,7 @@ cd9660_vget_internal(mp, ino, vpp, relocated, isodir)
ip->iso_start = ino >> imp->im_bshift;
if (bp != 0)
brelse(bp);
- if (error = VOP_BLKATOFF(vp, (off_t)0, NULL, &bp)) {
+ if (error = cd9660_blkatoff(vp, (off_t)0, NULL, &bp)) {
vput(vp);
return (error);
}
@@ -787,7 +787,7 @@ cd9660_vget_internal(mp, ino, vpp, relocated, isodir)
int off;
if ((imp->im_flags & ISOFSMNT_EXTATT)
&& (off = isonum_711(isodir->ext_attr_length)))
- VOP_BLKATOFF(vp, (off_t)-(off << imp->im_bshift), NULL,
+ cd9660_blkatoff(vp, (off_t)-(off << imp->im_bshift), NULL,
&bp2);
else
bp2 = NULL;
diff --git a/sys/fs/cd9660/cd9660_vnops.c b/sys/fs/cd9660/cd9660_vnops.c
index 607d7d6..b794436 100644
--- a/sys/fs/cd9660/cd9660_vnops.c
+++ b/sys/fs/cd9660/cd9660_vnops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_vnops.c 8.19 (Berkeley) 5/27/95
- * $Id: cd9660_vnops.c,v 1.42 1997/10/15 10:03:58 phk Exp $
+ * $Id: cd9660_vnops.c,v 1.43 1997/10/15 13:22:39 phk Exp $
*/
#include <sys/param.h>
@@ -569,7 +569,7 @@ cd9660_readdir(ap)
idp->curroff = uio->uio_offset;
if ((entryoffsetinblock = idp->curroff & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)idp->curroff, NULL, &bp))) {
+ (error = cd9660_blkatoff(vdp, (off_t)idp->curroff, NULL, &bp))) {
FREE(idp, M_TEMP);
return (error);
}
@@ -585,7 +585,7 @@ cd9660_readdir(ap)
if (bp != NULL)
brelse(bp);
if (error =
- VOP_BLKATOFF(vdp, (off_t)idp->curroff, NULL, &bp))
+ cd9660_blkatoff(vdp, (off_t)idp->curroff, NULL, &bp))
break;
entryoffsetinblock = 0;
}
@@ -953,44 +953,6 @@ cd9660_pathconf(ap)
}
/*
- * Global vfs data structures for isofs
- */
-#define cd9660_create \
- ((int (*) __P((struct vop_create_args *)))eopnotsupp)
-#define cd9660_mknod ((int (*) __P((struct vop_mknod_args *)))eopnotsupp)
-#define cd9660_write ((int (*) __P((struct vop_write_args *)))eopnotsupp)
-#ifdef NFS
-#define cd9660_lease_check lease_check
-#else
-#define cd9660_lease_check ((int (*) __P((struct vop_lease_args *)))nullop)
-#endif
-#define cd9660_poll vop_nopoll
-#define cd9660_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define cd9660_remove \
- ((int (*) __P((struct vop_remove_args *)))eopnotsupp)
-#define cd9660_link ((int (*) __P((struct vop_link_args *)))eopnotsupp)
-#define cd9660_rename \
- ((int (*) __P((struct vop_rename_args *)))eopnotsupp)
-#define cd9660_mkdir ((int (*) __P((struct vop_mkdir_args *)))eopnotsupp)
-#define cd9660_rmdir ((int (*) __P((struct vop_rmdir_args *)))eopnotsupp)
-#define cd9660_symlink \
- ((int (*) __P((struct vop_symlink_args *)))eopnotsupp)
-#define cd9660_advlock \
- ((int (*) __P((struct vop_advlock_args *)))eopnotsupp)
-#define cd9660_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) eopnotsupp)
-#define cd9660_vfree ((int (*) __P((struct vop_vfree_args *)))eopnotsupp)
-#define cd9660_truncate \
- ((int (*) __P((struct vop_truncate_args *)))eopnotsupp)
-#define cd9660_update \
- ((int (*) __P((struct vop_update_args *)))eopnotsupp)
-#define cd9660_bwrite \
- ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp)
-
-/*
* Global vfs data structures for cd9660
*/
vop_t **cd9660_vnodeop_p;
@@ -998,47 +960,28 @@ struct vnodeopv_entry_desc cd9660_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
{ &vop_abortop_desc, (vop_t *) cd9660_abortop },
{ &vop_access_desc, (vop_t *) cd9660_access },
- { &vop_advlock_desc, (vop_t *) cd9660_advlock },
- { &vop_blkatoff_desc, (vop_t *) cd9660_blkatoff },
{ &vop_bmap_desc, (vop_t *) cd9660_bmap },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_cachedlookup_desc, (vop_t *) cd9660_lookup },
{ &vop_close_desc, (vop_t *) cd9660_close },
- { &vop_create_desc, (vop_t *) cd9660_create },
- { &vop_fsync_desc, (vop_t *) cd9660_fsync },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) cd9660_getattr },
{ &vop_inactive_desc, (vop_t *) cd9660_inactive },
{ &vop_ioctl_desc, (vop_t *) cd9660_ioctl },
{ &vop_islocked_desc, (vop_t *) cd9660_islocked },
- { &vop_lease_desc, (vop_t *) cd9660_lease_check },
- { &vop_link_desc, (vop_t *) cd9660_link },
{ &vop_lock_desc, (vop_t *) cd9660_lock },
{ &vop_lookup_desc, (vop_t *) vfs_cache_lookup },
- { &vop_mkdir_desc, (vop_t *) cd9660_mkdir },
- { &vop_mknod_desc, (vop_t *) cd9660_mknod },
{ &vop_mmap_desc, (vop_t *) cd9660_mmap },
{ &vop_open_desc, (vop_t *) cd9660_open },
{ &vop_pathconf_desc, (vop_t *) cd9660_pathconf },
- { &vop_poll_desc, (vop_t *) cd9660_poll },
{ &vop_print_desc, (vop_t *) cd9660_print },
{ &vop_read_desc, (vop_t *) cd9660_read },
{ &vop_readdir_desc, (vop_t *) cd9660_readdir },
{ &vop_readlink_desc, (vop_t *) cd9660_readlink },
{ &vop_reclaim_desc, (vop_t *) cd9660_reclaim },
- { &vop_remove_desc, (vop_t *) cd9660_remove },
- { &vop_rename_desc, (vop_t *) cd9660_rename },
- { &vop_revoke_desc, (vop_t *) cd9660_revoke },
- { &vop_rmdir_desc, (vop_t *) cd9660_rmdir },
{ &vop_seek_desc, (vop_t *) cd9660_seek },
{ &vop_setattr_desc, (vop_t *) cd9660_setattr },
{ &vop_strategy_desc, (vop_t *) cd9660_strategy },
- { &vop_symlink_desc, (vop_t *) cd9660_symlink },
- { &vop_truncate_desc, (vop_t *) cd9660_truncate },
{ &vop_unlock_desc, (vop_t *) cd9660_unlock },
- { &vop_update_desc, (vop_t *) cd9660_update },
- { &vop_valloc_desc, (vop_t *) cd9660_valloc },
- { &vop_vfree_desc, (vop_t *) cd9660_vfree },
- { &vop_write_desc, (vop_t *) cd9660_write },
{ NULL, NULL }
};
static struct vnodeopv_desc cd9660_vnodeop_opv_desc =
@@ -1052,7 +995,6 @@ vop_t **cd9660_specop_p;
struct vnodeopv_entry_desc cd9660_specop_entries[] = {
{ &vop_default_desc, (vop_t *) spec_vnoperate },
{ &vop_access_desc, (vop_t *) cd9660_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_getattr_desc, (vop_t *) cd9660_getattr },
{ &vop_inactive_desc, (vop_t *) cd9660_inactive },
{ &vop_islocked_desc, (vop_t *) cd9660_islocked },
@@ -1061,7 +1003,6 @@ struct vnodeopv_entry_desc cd9660_specop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) cd9660_reclaim },
{ &vop_setattr_desc, (vop_t *) cd9660_setattr },
{ &vop_unlock_desc, (vop_t *) cd9660_unlock },
- { &vop_update_desc, (vop_t *) cd9660_update },
{ NULL, NULL }
};
static struct vnodeopv_desc cd9660_specop_opv_desc =
@@ -1072,7 +1013,6 @@ vop_t **cd9660_fifoop_p;
struct vnodeopv_entry_desc cd9660_fifoop_entries[] = {
{ &vop_default_desc, (vop_t *) fifo_vnoperate },
{ &vop_access_desc, (vop_t *) cd9660_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_getattr_desc, (vop_t *) cd9660_getattr },
{ &vop_inactive_desc, (vop_t *) cd9660_inactive },
{ &vop_islocked_desc, (vop_t *) cd9660_islocked },
@@ -1081,7 +1021,6 @@ struct vnodeopv_entry_desc cd9660_fifoop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) cd9660_reclaim },
{ &vop_setattr_desc, (vop_t *) cd9660_setattr },
{ &vop_unlock_desc, (vop_t *) cd9660_unlock },
- { &vop_update_desc, (vop_t *) cd9660_update },
{ NULL, NULL }
};
static struct vnodeopv_desc cd9660_fifoop_opv_desc =
diff --git a/sys/fs/deadfs/dead_vnops.c b/sys/fs/deadfs/dead_vnops.c
index 43b531a..3c41130 100644
--- a/sys/fs/deadfs/dead_vnops.c
+++ b/sys/fs/deadfs/dead_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)dead_vnops.c 8.1 (Berkeley) 6/10/93
- * $Id: dead_vnops.c,v 1.16 1997/10/15 09:20:50 phk Exp $
+ * $Id: dead_vnops.c,v 1.17 1997/10/15 10:04:03 phk Exp $
*/
#include <sys/param.h>
@@ -47,88 +47,48 @@ static int chkvnlock __P((struct vnode *));
static int dead_badop __P((void));
static int dead_ebadf __P((void));
static int dead_lookup __P((struct vop_lookup_args *));
-#define dead_create ((int (*) __P((struct vop_create_args *)))dead_badop)
-#define dead_mknod ((int (*) __P((struct vop_mknod_args *)))dead_badop)
static int dead_open __P((struct vop_open_args *));
-#define dead_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define dead_access ((int (*) __P((struct vop_access_args *)))dead_ebadf)
-#define dead_getattr ((int (*) __P((struct vop_getattr_args *)))dead_ebadf)
-#define dead_setattr ((int (*) __P((struct vop_setattr_args *)))dead_ebadf)
static int dead_read __P((struct vop_read_args *));
static int dead_write __P((struct vop_write_args *));
static int dead_ioctl __P((struct vop_ioctl_args *));
-#define dead_poll vop_nopoll
-#define dead_mmap ((int (*) __P((struct vop_mmap_args *)))dead_badop)
-#define dead_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define dead_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define dead_remove ((int (*) __P((struct vop_remove_args *)))dead_badop)
-#define dead_link ((int (*) __P((struct vop_link_args *)))dead_badop)
-#define dead_rename ((int (*) __P((struct vop_rename_args *)))dead_badop)
-#define dead_mkdir ((int (*) __P((struct vop_mkdir_args *)))dead_badop)
-#define dead_rmdir ((int (*) __P((struct vop_rmdir_args *)))dead_badop)
-#define dead_symlink ((int (*) __P((struct vop_symlink_args *)))dead_badop)
-#define dead_readdir ((int (*) __P((struct vop_readdir_args *)))dead_ebadf)
-#define dead_readlink ((int (*) __P((struct vop_readlink_args *)))dead_ebadf)
-#define dead_abortop ((int (*) __P((struct vop_abortop_args *)))dead_badop)
-#define dead_inactive ((int (*) __P((struct vop_inactive_args *)))nullop)
-#define dead_reclaim ((int (*) __P((struct vop_reclaim_args *)))nullop)
static int dead_lock __P((struct vop_lock_args *));
-#define dead_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
static int dead_bmap __P((struct vop_bmap_args *));
-static int dead_strategy __P((struct vop_strategy_args *));
static int dead_print __P((struct vop_print_args *));
-#define dead_islocked ((int(*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define dead_pathconf ((int (*) __P((struct vop_pathconf_args *)))dead_ebadf)
-#define dead_advlock ((int (*) __P((struct vop_advlock_args *)))dead_ebadf)
-#define dead_blkatoff ((int (*) __P((struct vop_blkatoff_args *)))dead_badop)
-#define dead_valloc ((int (*) __P((struct vop_valloc_args *)))dead_badop)
-#define dead_vfree ((int (*) __P((struct vop_vfree_args *)))dead_badop)
-#define dead_truncate ((int (*) __P((struct vop_truncate_args *)))nullop)
-#define dead_update ((int (*) __P((struct vop_update_args *)))nullop)
-#define dead_bwrite ((int (*) __P((struct vop_bwrite_args *)))nullop)
vop_t **dead_vnodeop_p;
static struct vnodeopv_entry_desc dead_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) dead_abortop },
- { &vop_access_desc, (vop_t *) dead_access },
- { &vop_advlock_desc, (vop_t *) dead_advlock },
- { &vop_blkatoff_desc, (vop_t *) dead_blkatoff },
+ { &vop_access_desc, (vop_t *) dead_ebadf },
+ { &vop_advlock_desc, (vop_t *) dead_ebadf },
{ &vop_bmap_desc, (vop_t *) dead_bmap },
- { &vop_bwrite_desc, (vop_t *) dead_bwrite },
- { &vop_close_desc, (vop_t *) dead_close },
- { &vop_create_desc, (vop_t *) dead_create },
- { &vop_fsync_desc, (vop_t *) dead_fsync },
- { &vop_getattr_desc, (vop_t *) dead_getattr },
- { &vop_inactive_desc, (vop_t *) dead_inactive },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_create_desc, (vop_t *) dead_badop },
+ { &vop_fsync_desc, (vop_t *) nullop },
+ { &vop_getattr_desc, (vop_t *) dead_ebadf },
+ { &vop_inactive_desc, (vop_t *) nullop },
{ &vop_ioctl_desc, (vop_t *) dead_ioctl },
- { &vop_islocked_desc, (vop_t *) dead_islocked },
- { &vop_link_desc, (vop_t *) dead_link },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_link_desc, (vop_t *) dead_badop },
{ &vop_lock_desc, (vop_t *) dead_lock },
{ &vop_lookup_desc, (vop_t *) dead_lookup },
- { &vop_mkdir_desc, (vop_t *) dead_mkdir },
- { &vop_mknod_desc, (vop_t *) dead_mknod },
- { &vop_mmap_desc, (vop_t *) dead_mmap },
+ { &vop_mkdir_desc, (vop_t *) dead_badop },
+ { &vop_mknod_desc, (vop_t *) dead_badop },
+ { &vop_mmap_desc, (vop_t *) dead_badop },
{ &vop_open_desc, (vop_t *) dead_open },
- { &vop_pathconf_desc, (vop_t *) dead_pathconf },
- { &vop_poll_desc, (vop_t *) dead_poll },
+ { &vop_pathconf_desc, (vop_t *) dead_ebadf },
{ &vop_print_desc, (vop_t *) dead_print },
{ &vop_read_desc, (vop_t *) dead_read },
- { &vop_readdir_desc, (vop_t *) dead_readdir },
- { &vop_readlink_desc, (vop_t *) dead_readlink },
- { &vop_reclaim_desc, (vop_t *) dead_reclaim },
- { &vop_remove_desc, (vop_t *) dead_remove },
- { &vop_rename_desc, (vop_t *) dead_rename },
- { &vop_rmdir_desc, (vop_t *) dead_rmdir },
- { &vop_seek_desc, (vop_t *) dead_seek },
- { &vop_setattr_desc, (vop_t *) dead_setattr },
- { &vop_strategy_desc, (vop_t *) dead_strategy },
- { &vop_symlink_desc, (vop_t *) dead_symlink },
- { &vop_truncate_desc, (vop_t *) dead_truncate },
- { &vop_unlock_desc, (vop_t *) dead_unlock },
- { &vop_update_desc, (vop_t *) dead_update },
- { &vop_valloc_desc, (vop_t *) dead_valloc },
- { &vop_vfree_desc, (vop_t *) dead_vfree },
+ { &vop_readdir_desc, (vop_t *) dead_ebadf },
+ { &vop_readlink_desc, (vop_t *) dead_ebadf },
+ { &vop_reclaim_desc, (vop_t *) nullop },
+ { &vop_remove_desc, (vop_t *) dead_badop },
+ { &vop_rename_desc, (vop_t *) dead_badop },
+ { &vop_rmdir_desc, (vop_t *) dead_badop },
+ { &vop_seek_desc, (vop_t *) nullop },
+ { &vop_setattr_desc, (vop_t *) dead_ebadf },
+ { &vop_symlink_desc, (vop_t *) dead_badop },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
+ { &vop_update_desc, (vop_t *) nullop },
{ &vop_write_desc, (vop_t *) dead_write },
{ NULL, NULL }
};
@@ -244,23 +204,6 @@ dead_ioctl(ap)
return (VCALL(ap->a_vp, VOFFSET(vop_ioctl), ap));
}
-/*
- * Just call the device strategy routine
- */
-static int
-dead_strategy(ap)
- struct vop_strategy_args /* {
- struct buf *a_bp;
- } */ *ap;
-{
-
- if (ap->a_bp->b_vp == NULL || !chkvnlock(ap->a_bp->b_vp)) {
- ap->a_bp->b_flags |= B_ERROR;
- biodone(ap->a_bp);
- return (EIO);
- }
- return (VOP_STRATEGY(ap->a_bp));
-}
/*
* Wait until the vnode has finished changing state.
diff --git a/sys/fs/fdescfs/fdesc_vnops.c b/sys/fs/fdescfs/fdesc_vnops.c
index c3ac29b..7793177 100644
--- a/sys/fs/fdescfs/fdesc_vnops.c
+++ b/sys/fs/fdescfs/fdesc_vnops.c
@@ -35,7 +35,7 @@
*
* @(#)fdesc_vnops.c 8.9 (Berkeley) 1/21/94
*
- * $Id: fdesc_vnops.c,v 1.27 1997/10/15 09:20:57 phk Exp $
+ * $Id: fdesc_vnops.c,v 1.28 1997/10/15 10:04:12 phk Exp $
*/
/*
@@ -99,7 +99,6 @@ static int fdesc_readlink __P((struct vop_readlink_args *ap));
static int fdesc_reclaim __P((struct vop_reclaim_args *ap));
static int fdesc_poll __P((struct vop_poll_args *ap));
static int fdesc_setattr __P((struct vop_setattr_args *ap));
-static int fdesc_vfree __P((struct vop_vfree_args *ap));
static int fdesc_write __P((struct vop_write_args *ap));
/*
@@ -883,19 +882,6 @@ fdesc_print(ap)
return (0);
}
-/*void*/
-static int
-fdesc_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
-{
-
- return (0);
-}
-
/*
* /dev/fd "should never get here" operation
*/
@@ -907,61 +893,18 @@ fdesc_badop()
/* NOTREACHED */
}
-#define fdesc_create ((int (*) __P((struct vop_create_args *)))eopnotsupp)
-#define fdesc_mknod ((int (*) __P((struct vop_mknod_args *)))eopnotsupp)
-#define fdesc_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define fdesc_access ((int (*) __P((struct vop_access_args *)))nullop)
-#define fdesc_mmap ((int (*) __P((struct vop_mmap_args *)))eopnotsupp)
-#define fdesc_revoke vop_revoke
-#define fdesc_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define fdesc_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define fdesc_remove ((int (*) __P((struct vop_remove_args *)))eopnotsupp)
-#define fdesc_link ((int (*) __P((struct vop_link_args *)))eopnotsupp)
-#define fdesc_rename ((int (*) __P((struct vop_rename_args *)))eopnotsupp)
-#define fdesc_mkdir ((int (*) __P((struct vop_mkdir_args *)))eopnotsupp)
-#define fdesc_rmdir ((int (*) __P((struct vop_rmdir_args *)))eopnotsupp)
-#define fdesc_symlink ((int (*) __P((struct vop_symlink_args *)))eopnotsupp)
-#define fdesc_abortop ((int (*) __P((struct vop_abortop_args *)))nullop)
-#define fdesc_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define fdesc_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define fdesc_bmap ((int (*) __P((struct vop_bmap_args *)))fdesc_badop)
-#define fdesc_strategy ((int (*) __P((struct vop_strategy_args *)))fdesc_badop)
-#define fdesc_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define fdesc_advlock ((int (*) __P((struct vop_advlock_args *)))eopnotsupp)
-#define fdesc_blkatoff \
- ((int (*) __P((struct vop_blkatoff_args *)))eopnotsupp)
-#define fdesc_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) eopnotsupp)
-#define fdesc_truncate \
- ((int (*) __P((struct vop_truncate_args *)))eopnotsupp)
-#define fdesc_update ((int (*) __P((struct vop_update_args *)))eopnotsupp)
-#define fdesc_bwrite ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp)
-
static struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) fdesc_abortop },
- { &vop_access_desc, (vop_t *) fdesc_access },
- { &vop_advlock_desc, (vop_t *) fdesc_advlock },
- { &vop_blkatoff_desc, (vop_t *) fdesc_blkatoff },
- { &vop_bmap_desc, (vop_t *) fdesc_bmap },
- { &vop_bwrite_desc, (vop_t *) fdesc_bwrite },
- { &vop_close_desc, (vop_t *) fdesc_close },
- { &vop_create_desc, (vop_t *) fdesc_create },
- { &vop_fsync_desc, (vop_t *) fdesc_fsync },
+ { &vop_access_desc, (vop_t *) nullop },
+ { &vop_bmap_desc, (vop_t *) fdesc_badop },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) fdesc_getattr },
{ &vop_inactive_desc, (vop_t *) fdesc_inactive },
{ &vop_ioctl_desc, (vop_t *) fdesc_ioctl },
- { &vop_islocked_desc, (vop_t *) fdesc_islocked },
- { &vop_link_desc, (vop_t *) fdesc_link },
- { &vop_lock_desc, (vop_t *) fdesc_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) fdesc_lookup },
- { &vop_mkdir_desc, (vop_t *) fdesc_mkdir },
- { &vop_mknod_desc, (vop_t *) fdesc_mknod },
- { &vop_mmap_desc, (vop_t *) fdesc_mmap },
{ &vop_open_desc, (vop_t *) fdesc_open },
{ &vop_pathconf_desc, (vop_t *) fdesc_pathconf },
{ &vop_poll_desc, (vop_t *) fdesc_poll },
@@ -970,19 +913,9 @@ static struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = {
{ &vop_readdir_desc, (vop_t *) fdesc_readdir },
{ &vop_readlink_desc, (vop_t *) fdesc_readlink },
{ &vop_reclaim_desc, (vop_t *) fdesc_reclaim },
- { &vop_remove_desc, (vop_t *) fdesc_remove },
- { &vop_rename_desc, (vop_t *) fdesc_rename },
- { &vop_revoke_desc, (vop_t *) fdesc_revoke },
- { &vop_rmdir_desc, (vop_t *) fdesc_rmdir },
- { &vop_seek_desc, (vop_t *) fdesc_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) fdesc_setattr },
- { &vop_strategy_desc, (vop_t *) fdesc_strategy },
- { &vop_symlink_desc, (vop_t *) fdesc_symlink },
- { &vop_truncate_desc, (vop_t *) fdesc_truncate },
- { &vop_unlock_desc, (vop_t *) fdesc_unlock },
- { &vop_update_desc, (vop_t *) fdesc_update },
- { &vop_valloc_desc, (vop_t *) fdesc_valloc },
- { &vop_vfree_desc, (vop_t *) fdesc_vfree },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) fdesc_write },
{ NULL, NULL }
};
diff --git a/sys/fs/fifofs/fifo_vnops.c b/sys/fs/fifofs/fifo_vnops.c
index 7bddac3..0b157a54 100644
--- a/sys/fs/fifofs/fifo_vnops.c
+++ b/sys/fs/fifofs/fifo_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)fifo_vnops.c 8.10 (Berkeley) 5/27/95
- * $Id: fifo_vnops.c,v 1.30 1997/10/15 10:04:18 phk Exp $
+ * $Id: fifo_vnops.c,v 1.31 1997/10/15 13:23:12 phk Exp $
*/
#include <sys/param.h>
@@ -82,9 +82,7 @@ static struct vnodeopv_entry_desc fifo_vnodeop_entries[] = {
{ &vop_abortop_desc, (vop_t *) fifo_badop },
{ &vop_access_desc, (vop_t *) fifo_ebadf },
{ &vop_advlock_desc, (vop_t *) fifo_advlock },
- { &vop_blkatoff_desc, (vop_t *) fifo_badop },
{ &vop_bmap_desc, (vop_t *) fifo_bmap },
- { &vop_bwrite_desc, (vop_t *) nullop },
{ &vop_close_desc, (vop_t *) fifo_close },
{ &vop_create_desc, (vop_t *) fifo_badop },
{ &vop_fsync_desc, (vop_t *) nullop },
@@ -110,17 +108,12 @@ static struct vnodeopv_entry_desc fifo_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) nullop },
{ &vop_remove_desc, (vop_t *) fifo_badop },
{ &vop_rename_desc, (vop_t *) fifo_badop },
- { &vop_revoke_desc, (vop_t *) vop_revoke },
{ &vop_rmdir_desc, (vop_t *) fifo_badop },
{ &vop_seek_desc, (vop_t *) fifo_badop },
{ &vop_setattr_desc, (vop_t *) fifo_ebadf },
- { &vop_strategy_desc, (vop_t *) fifo_badop },
{ &vop_symlink_desc, (vop_t *) fifo_badop },
- { &vop_truncate_desc, (vop_t *) fifo_badop },
{ &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_update_desc, (vop_t *) nullop },
- { &vop_valloc_desc, (vop_t *) fifo_badop },
- { &vop_vfree_desc, (vop_t *) fifo_badop },
{ &vop_write_desc, (vop_t *) fifo_write },
{ NULL, NULL }
};
diff --git a/sys/fs/msdosfs/msdosfs_vnops.c b/sys/fs/msdosfs/msdosfs_vnops.c
index dfb416b..6871b10 100644
--- a/sys/fs/msdosfs/msdosfs_vnops.c
+++ b/sys/fs/msdosfs/msdosfs_vnops.c
@@ -1,4 +1,4 @@
-/* $Id: msdosfs_vnops.c,v 1.46 1997/10/15 09:21:39 phk Exp $ */
+/* $Id: msdosfs_vnops.c,v 1.47 1997/10/15 10:05:03 phk Exp $ */
/* $NetBSD: msdosfs_vnops.c,v 1.20 1994/08/21 18:44:13 ws Exp $ */
/*-
@@ -1992,7 +1992,6 @@ static struct vnodeopv_entry_desc msdosfs_vnodeop_entries[] = {
{ &vop_access_desc, (vop_t *) msdosfs_access },
{ &vop_advlock_desc, (vop_t *) msdosfs_advlock },
{ &vop_bmap_desc, (vop_t *) msdosfs_bmap },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_cachedlookup_desc, (vop_t *) msdosfs_lookup },
{ &vop_close_desc, (vop_t *) msdosfs_close },
{ &vop_create_desc, (vop_t *) msdosfs_create },
diff --git a/sys/fs/portalfs/portal_vnops.c b/sys/fs/portalfs/portal_vnops.c
index 231b385..d8c2230 100644
--- a/sys/fs/portalfs/portal_vnops.c
+++ b/sys/fs/portalfs/portal_vnops.c
@@ -35,7 +35,7 @@
*
* @(#)portal_vnops.c 8.14 (Berkeley) 5/21/95
*
- * $Id: portal_vnops.c,v 1.22 1997/10/15 09:21:11 phk Exp $
+ * $Id: portal_vnops.c,v 1.23 1997/10/15 10:04:34 phk Exp $
*/
/*
@@ -78,7 +78,6 @@ static int portal_print __P((struct vop_print_args *ap));
static int portal_readdir __P((struct vop_readdir_args *ap));
static int portal_reclaim __P((struct vop_reclaim_args *ap));
static int portal_setattr __P((struct vop_setattr_args *ap));
-static int portal_vfree __P((struct vop_vfree_args *ap));
static void
portal_closefd(p, fd)
@@ -612,19 +611,6 @@ portal_print(ap)
return (0);
}
-/*void*/
-static int
-portal_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
-{
-
- return (0);
-}
-
/*
* Portal vnode unsupported operation
@@ -647,94 +633,26 @@ portal_badop()
/* NOTREACHED */
}
-#define portal_create ((int (*) __P((struct vop_create_args *)))portal_enotsupp)
-#define portal_mknod ((int (*) __P((struct vop_mknod_args *)))portal_enotsupp)
-#define portal_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define portal_access ((int (*) __P((struct vop_access_args *)))nullop)
-#define portal_read ((int (*) __P((struct vop_read_args *)))portal_enotsupp)
-#define portal_write ((int (*) __P((struct vop_write_args *)))portal_enotsupp)
-#define portal_ioctl ((int (*) __P((struct vop_ioctl_args *)))portal_enotsupp)
-#define portal_mmap ((int (*) __P((struct vop_mmap_args *)))portal_enotsupp)
-#define portal_poll vop_nopoll
-#define portal_revoke vop_revoke
-#define portal_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define portal_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define portal_remove ((int (*) __P((struct vop_remove_args *)))portal_enotsupp)
-#define portal_link ((int (*) __P((struct vop_link_args *)))portal_enotsupp)
-#define portal_rename ((int (*) __P((struct vop_rename_args *)))portal_enotsupp)
-#define portal_mkdir ((int (*) __P((struct vop_mkdir_args *)))portal_enotsupp)
-#define portal_rmdir ((int (*) __P((struct vop_rmdir_args *)))portal_enotsupp)
-#define portal_symlink \
- ((int (*) __P((struct vop_symlink_args *)))portal_enotsupp)
-#define portal_readlink \
- ((int (*) __P((struct vop_readlink_args *)))portal_enotsupp)
-#define portal_abortop ((int (*) __P((struct vop_abortop_args *)))nullop)
-#define portal_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define portal_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define portal_bmap ((int (*) __P((struct vop_bmap_args *)))portal_badop)
-#define portal_strategy \
- ((int (*) __P((struct vop_strategy_args *)))portal_badop)
-#define portal_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define fifo_islocked ((int(*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define portal_advlock \
- ((int (*) __P((struct vop_advlock_args *)))portal_enotsupp)
-#define portal_blkatoff \
- ((int (*) __P((struct vop_blkatoff_args *)))portal_enotsupp)
-#define portal_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) portal_enotsupp)
-#define portal_truncate \
- ((int (*) __P((struct vop_truncate_args *)))portal_enotsupp)
-#define portal_update ((int (*) __P((struct vop_update_args *)))portal_enotsupp)
-#define portal_bwrite ((int (*) __P((struct vop_bwrite_args *)))portal_enotsupp)
-
vop_t **portal_vnodeop_p;
static struct vnodeopv_entry_desc portal_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) portal_abortop },
- { &vop_access_desc, (vop_t *) portal_access },
- { &vop_advlock_desc, (vop_t *) portal_advlock },
- { &vop_blkatoff_desc, (vop_t *) portal_blkatoff },
- { &vop_bmap_desc, (vop_t *) portal_bmap },
- { &vop_bwrite_desc, (vop_t *) portal_bwrite },
- { &vop_close_desc, (vop_t *) portal_close },
- { &vop_create_desc, (vop_t *) portal_create },
- { &vop_fsync_desc, (vop_t *) portal_fsync },
+ { &vop_access_desc, (vop_t *) nullop },
+ { &vop_bmap_desc, (vop_t *) portal_badop },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) portal_getattr },
{ &vop_inactive_desc, (vop_t *) portal_inactive },
- { &vop_ioctl_desc, (vop_t *) portal_ioctl },
- { &vop_islocked_desc, (vop_t *) portal_islocked },
- { &vop_link_desc, (vop_t *) portal_link },
- { &vop_lock_desc, (vop_t *) portal_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) portal_lookup },
- { &vop_mkdir_desc, (vop_t *) portal_mkdir },
- { &vop_mknod_desc, (vop_t *) portal_mknod },
- { &vop_mmap_desc, (vop_t *) portal_mmap },
{ &vop_open_desc, (vop_t *) portal_open },
{ &vop_pathconf_desc, (vop_t *) portal_pathconf },
- { &vop_poll_desc, (vop_t *) portal_poll },
{ &vop_print_desc, (vop_t *) portal_print },
- { &vop_read_desc, (vop_t *) portal_read },
{ &vop_readdir_desc, (vop_t *) portal_readdir },
- { &vop_readlink_desc, (vop_t *) portal_readlink },
{ &vop_reclaim_desc, (vop_t *) portal_reclaim },
- { &vop_remove_desc, (vop_t *) portal_remove },
- { &vop_rename_desc, (vop_t *) portal_rename },
- { &vop_revoke_desc, (vop_t *) portal_revoke },
- { &vop_rmdir_desc, (vop_t *) portal_rmdir },
- { &vop_seek_desc, (vop_t *) portal_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) portal_setattr },
- { &vop_strategy_desc, (vop_t *) portal_strategy },
- { &vop_symlink_desc, (vop_t *) portal_symlink },
- { &vop_truncate_desc, (vop_t *) portal_truncate },
- { &vop_unlock_desc, (vop_t *) portal_unlock },
- { &vop_update_desc, (vop_t *) portal_update },
- { &vop_valloc_desc, (vop_t *) portal_valloc },
- { &vop_vfree_desc, (vop_t *) portal_vfree },
- { &vop_write_desc, (vop_t *) portal_write },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ NULL, NULL }
};
static struct vnodeopv_desc portal_vnodeop_opv_desc =
diff --git a/sys/fs/procfs/procfs_vnops.c b/sys/fs/procfs/procfs_vnops.c
index 443d89f..ab62a4d 100644
--- a/sys/fs/procfs/procfs_vnops.c
+++ b/sys/fs/procfs/procfs_vnops.c
@@ -36,7 +36,7 @@
*
* @(#)procfs_vnops.c 8.18 (Berkeley) 5/21/95
*
- * $Id: procfs_vnops.c,v 1.34 1997/10/15 09:21:19 phk Exp $
+ * $Id: procfs_vnops.c,v 1.35 1997/10/15 10:04:38 phk Exp $
*/
/*
@@ -936,33 +936,6 @@ atopid(b, len)
return (p);
}
-#define procfs_create ((int (*) __P((struct vop_create_args *))) procfs_badop)
-#define procfs_mknod ((int (*) __P((struct vop_mknod_args *))) procfs_badop)
-#define procfs_read procfs_rw
-#define procfs_write procfs_rw
-#define procfs_mmap ((int (*) __P((struct vop_mmap_args *))) procfs_badop)
-#define procfs_poll vop_nopoll
-#define procfs_revoke vop_revoke
-#define procfs_fsync ((int (*) __P((struct vop_fsync_args *))) procfs_badop)
-#define procfs_seek ((int (*) __P((struct vop_seek_args *))) procfs_badop)
-#define procfs_remove ((int (*) __P((struct vop_remove_args *))) procfs_badop)
-#define procfs_link ((int (*) __P((struct vop_link_args *))) procfs_badop)
-#define procfs_rename ((int (*) __P((struct vop_rename_args *))) procfs_badop)
-#define procfs_mkdir ((int (*) __P((struct vop_mkdir_args *))) procfs_badop)
-#define procfs_rmdir ((int (*) __P((struct vop_rmdir_args *))) procfs_badop)
-#define procfs_symlink ((int (*) __P((struct vop_symlink_args *))) procfs_badop)
-#define procfs_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define procfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define procfs_strategy ((int (*) __P((struct vop_strategy_args *))) procfs_badop)
-#define procfs_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define procfs_advlock ((int (*) __P((struct vop_advlock_args *))) procfs_badop)
-#define procfs_blkatoff ((int (*) __P((struct vop_blkatoff_args *))) procfs_badop)
-#define procfs_valloc ((int (*) __P((struct vop_valloc_args *))) procfs_badop)
-#define procfs_vfree ((int (*) __P((struct vop_vfree_args *))) nullop)
-#define procfs_truncate ((int (*) __P((struct vop_truncate_args *))) procfs_badop)
-#define procfs_update ((int (*) __P((struct vop_update_args *))) nullop)
-
/*
* procfs vnode operations.
*/
@@ -971,44 +944,36 @@ static struct vnodeopv_entry_desc procfs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
{ &vop_abortop_desc, (vop_t *) procfs_abortop },
{ &vop_access_desc, (vop_t *) procfs_access },
- { &vop_advlock_desc, (vop_t *) procfs_advlock },
- { &vop_blkatoff_desc, (vop_t *) procfs_blkatoff },
+ { &vop_advlock_desc, (vop_t *) procfs_badop },
{ &vop_bmap_desc, (vop_t *) procfs_bmap },
{ &vop_close_desc, (vop_t *) procfs_close },
- { &vop_create_desc, (vop_t *) procfs_create },
- { &vop_fsync_desc, (vop_t *) procfs_fsync },
+ { &vop_create_desc, (vop_t *) procfs_badop },
{ &vop_getattr_desc, (vop_t *) procfs_getattr },
{ &vop_inactive_desc, (vop_t *) procfs_inactive },
{ &vop_ioctl_desc, (vop_t *) procfs_ioctl },
- { &vop_islocked_desc, (vop_t *) procfs_islocked },
- { &vop_link_desc, (vop_t *) procfs_link },
- { &vop_lock_desc, (vop_t *) procfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_link_desc, (vop_t *) procfs_badop },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) procfs_lookup },
- { &vop_mkdir_desc, (vop_t *) procfs_mkdir },
- { &vop_mknod_desc, (vop_t *) procfs_mknod },
- { &vop_mmap_desc, (vop_t *) procfs_mmap },
+ { &vop_mkdir_desc, (vop_t *) procfs_badop },
+ { &vop_mknod_desc, (vop_t *) procfs_badop },
+ { &vop_mmap_desc, (vop_t *) procfs_badop },
{ &vop_open_desc, (vop_t *) procfs_open },
{ &vop_pathconf_desc, (vop_t *) procfs_pathconf },
- { &vop_poll_desc, (vop_t *) procfs_poll },
{ &vop_print_desc, (vop_t *) procfs_print },
- { &vop_read_desc, (vop_t *) procfs_read },
+ { &vop_read_desc, (vop_t *) procfs_rw },
{ &vop_readdir_desc, (vop_t *) procfs_readdir },
{ &vop_readlink_desc, (vop_t *) procfs_readlink },
{ &vop_reclaim_desc, (vop_t *) procfs_reclaim },
- { &vop_remove_desc, (vop_t *) procfs_remove },
- { &vop_rename_desc, (vop_t *) procfs_rename },
- { &vop_revoke_desc, (vop_t *) procfs_revoke },
- { &vop_rmdir_desc, (vop_t *) procfs_rmdir },
- { &vop_seek_desc, (vop_t *) procfs_seek },
+ { &vop_remove_desc, (vop_t *) procfs_badop },
+ { &vop_rename_desc, (vop_t *) procfs_badop },
+ { &vop_rmdir_desc, (vop_t *) procfs_badop },
+ { &vop_seek_desc, (vop_t *) procfs_badop },
{ &vop_setattr_desc, (vop_t *) procfs_setattr },
- { &vop_strategy_desc, (vop_t *) procfs_strategy },
- { &vop_symlink_desc, (vop_t *) procfs_symlink },
- { &vop_truncate_desc, (vop_t *) procfs_truncate },
- { &vop_unlock_desc, (vop_t *) procfs_unlock },
- { &vop_update_desc, (vop_t *) procfs_update },
- { &vop_valloc_desc, (vop_t *) procfs_valloc },
- { &vop_vfree_desc, (vop_t *) procfs_vfree },
- { &vop_write_desc, (vop_t *) procfs_write },
+ { &vop_symlink_desc, (vop_t *) procfs_badop },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
+ { &vop_update_desc, (vop_t *) nullop },
+ { &vop_write_desc, (vop_t *) procfs_rw },
{ NULL, NULL }
};
static struct vnodeopv_desc procfs_vnodeop_opv_desc =
diff --git a/sys/fs/specfs/spec_vnops.c b/sys/fs/specfs/spec_vnops.c
index 73361c2..12a9f29 100644
--- a/sys/fs/specfs/spec_vnops.c
+++ b/sys/fs/specfs/spec_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)spec_vnops.c 8.14 (Berkeley) 5/21/95
- * $Id: spec_vnops.c,v 1.45 1997/10/15 10:04:43 phk Exp $
+ * $Id: spec_vnops.c,v 1.46 1997/10/15 13:23:18 phk Exp $
*/
#include <sys/param.h>
@@ -81,12 +81,9 @@ struct vnode *speclisth[SPECHSZ];
vop_t **spec_vnodeop_p;
static struct vnodeopv_entry_desc spec_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) spec_badop },
{ &vop_access_desc, (vop_t *) spec_ebadf },
{ &vop_advlock_desc, (vop_t *) spec_advlock },
- { &vop_blkatoff_desc, (vop_t *) spec_badop },
{ &vop_bmap_desc, (vop_t *) spec_bmap },
- { &vop_bwrite_desc, (vop_t *) nullop },
{ &vop_close_desc, (vop_t *) spec_close },
{ &vop_create_desc, (vop_t *) spec_badop },
{ &vop_fsync_desc, (vop_t *) spec_fsync },
@@ -113,17 +110,13 @@ static struct vnodeopv_entry_desc spec_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) nullop },
{ &vop_remove_desc, (vop_t *) spec_badop },
{ &vop_rename_desc, (vop_t *) spec_badop },
- { &vop_revoke_desc, (vop_t *) vop_revoke },
{ &vop_rmdir_desc, (vop_t *) spec_badop },
{ &vop_seek_desc, (vop_t *) spec_badop },
{ &vop_setattr_desc, (vop_t *) spec_ebadf },
{ &vop_strategy_desc, (vop_t *) spec_strategy },
{ &vop_symlink_desc, (vop_t *) spec_badop },
- { &vop_truncate_desc, (vop_t *) nullop },
{ &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_update_desc, (vop_t *) nullop },
- { &vop_valloc_desc, (vop_t *) spec_badop },
- { &vop_vfree_desc, (vop_t *) spec_badop },
{ &vop_write_desc, (vop_t *) spec_write },
{ NULL, NULL }
};
@@ -480,7 +473,7 @@ spec_poll(ap)
dev = ap->a_vp->v_rdev;
return (*cdevsw[major(dev)]->d_poll)(dev, ap->a_events, ap->a_p);
default:
- return (vop_nopoll(ap));
+ return (vn_defaultop((struct vop_generic_args *)ap));
}
}
diff --git a/sys/gnu/ext2fs/ext2_alloc.c b/sys/gnu/ext2fs/ext2_alloc.c
index 64e9b87..f78b6a5 100644
--- a/sys/gnu/ext2fs/ext2_alloc.c
+++ b/sys/gnu/ext2fs/ext2_alloc.c
@@ -56,6 +56,7 @@
#include <ufs/ufs/quota.h>
#include <ufs/ufs/inode.h>
+#include <ufs/ufs/ufsmount.h>
#include <gnu/ext2fs/ext2_fs.h>
#include <gnu/ext2fs/ext2_fs_sb.h>
@@ -383,26 +384,22 @@ fail:
* ext2_new_inode(), to make sure we get the policies right
*/
int
-ext2_valloc(ap)
- struct vop_valloc_args /* {
- struct vnode *a_pvp;
- int a_mode;
- struct ucred *a_cred;
- struct vnode **a_vpp;
- } */ *ap;
+ext2_valloc(pvp, mode, cred, vpp)
+ struct vnode *pvp;
+ int mode;
+ struct ucred *cred;
+ struct vnode **vpp;
{
- register struct vnode *pvp = ap->a_pvp;
register struct inode *pip;
register struct ext2_sb_info *fs;
register struct inode *ip;
- mode_t mode = ap->a_mode;
ino_t ino;
int i, error;
#if !defined(__FreeBSD__)
struct timeval time;
#endif
- *ap->a_vpp = NULL;
+ *vpp = NULL;
pip = VTOI(pvp);
fs = pip->i_e2fs;
if (fs->s_es->s_free_inodes_count == 0)
@@ -413,12 +410,12 @@ ext2_valloc(ap)
if (ino == 0)
goto noinodes;
- error = VFS_VGET(pvp->v_mount, ino, ap->a_vpp);
+ error = VFS_VGET(pvp->v_mount, ino, vpp);
if (error) {
- VOP_VFREE(pvp, ino, mode);
+ UFS_VFREE(pvp, ino, mode);
return (error);
}
- ip = VTOI(*ap->a_vpp);
+ ip = VTOI(*vpp);
/*
the question is whether using VGET was such good idea at all -
@@ -448,7 +445,7 @@ printf("ext2_valloc: allocated inode %d\n", ino);
*/
return (0);
noinodes:
- ext2_fserr(fs, ap->a_cred->cr_uid, "out of inodes");
+ ext2_fserr(fs, cred->cr_uid, "out of inodes");
uprintf("\n%s: create/symlink failed, no inodes free\n", fs->fs_fsmnt);
return (ENOSPC);
}
@@ -525,25 +522,21 @@ ext2_blkfree(ip, bno, size)
* the maintenance of the actual bitmaps is again up to the linux code
*/
int
-ext2_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
+ext2_vfree(pvp, ino, mode)
+ struct vnode *pvp;
+ ino_t ino;
+ int mode;
{
register struct ext2_sb_info *fs;
register struct inode *pip;
- ino_t ino = ap->a_ino;
- int mode;
- pip = VTOI(ap->a_pvp);
+ pip = VTOI(pvp);
fs = pip->i_e2fs;
if ((u_int)ino >= fs->s_inodes_per_group * fs->s_groups_count)
panic("ifree: range: dev = 0x%x, ino = %d, fs = %s",
pip->i_dev, ino, fs->fs_fsmnt);
-/* ext2_debug("ext2_vfree (%d, %d) called\n", pip->i_number, ap->a_mode);
+/* ext2_debug("ext2_vfree (%d, %d) called\n", pip->i_number, mode);
*/
ext2_discard_prealloc(pip);
@@ -553,7 +546,7 @@ ext2_vfree(ap)
'set i_mode to zero to denote an unused inode' is
*/
mode = pip->i_mode;
- pip->i_mode = ap->a_mode;
+ pip->i_mode = mode;
ext2_free_inode(pip);
pip->i_mode = mode;
return (0);
diff --git a/sys/gnu/ext2fs/ext2_extern.h b/sys/gnu/ext2fs/ext2_extern.h
index 4c32799..b185f52 100644
--- a/sys/gnu/ext2fs/ext2_extern.h
+++ b/sys/gnu/ext2fs/ext2_extern.h
@@ -53,7 +53,7 @@ int ext2_alloc __P((struct inode *,
daddr_t, daddr_t, int, struct ucred *, daddr_t *));
int ext2_balloc __P((struct inode *,
daddr_t, int, struct ucred *, struct buf **, int));
-int ext2_blkatoff __P((struct vop_blkatoff_args *));
+int ext2_blkatoff __P((struct vnode *, off_t, char **, struct buf **));
void ext2_blkfree __P((struct inode *, daddr_t, long));
daddr_t ext2_blkpref __P((struct inode *, daddr_t, int, daddr_t *, daddr_t));
int ext2_bmap __P((struct vop_bmap_args *));
@@ -61,10 +61,10 @@ int ext2_init __P((struct vfsconf *));
int ext2_reallocblks __P((struct vop_reallocblks_args *));
int ext2_reclaim __P((struct vop_reclaim_args *));
void ext2_setblock __P((struct ext2_sb_info *, u_char *, daddr_t));
-int ext2_truncate __P((struct vop_truncate_args *));
+int ext2_truncate __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
int ext2_update __P((struct vop_update_args *));
-int ext2_valloc __P((struct vop_valloc_args *));
-int ext2_vfree __P((struct vop_vfree_args *));
+int ext2_valloc __P((struct vnode *, int, struct ucred *, struct vnode **));
+int ext2_vfree __P((struct vnode *, ino_t, int));
int ext2_lookup __P((struct vop_cachedlookup_args *));
int ext2_readdir __P((struct vop_readdir_args *));
void ext2_print_dinode __P((struct dinode *));
diff --git a/sys/gnu/ext2fs/ext2_inode.c b/sys/gnu/ext2fs/ext2_inode.c
index bc2b1e6..0514022 100644
--- a/sys/gnu/ext2fs/ext2_inode.c
+++ b/sys/gnu/ext2fs/ext2_inode.c
@@ -156,21 +156,18 @@ ext2_update(ap)
* disk blocks.
*/
int
-ext2_truncate(ap)
- struct vop_truncate_args /* {
- struct vnode *a_vp;
- off_t a_length;
- int a_flags;
- struct ucred *a_cred;
- struct proc *a_p;
- } */ *ap;
+ext2_truncate(vp, length, flags, cred, p)
+ struct vnode *vp;
+ off_t length;
+ int flags;
+ struct ucred *cred;
+ struct proc *p;
{
- register struct vnode *ovp = ap->a_vp;
+ register struct vnode *ovp = vp;
register daddr_t lastblock;
register struct inode *oip;
daddr_t bn, lbn, lastiblock[NIADDR], indir_lbn[NIADDR];
daddr_t oldblks[NDADDR + NIADDR], newblks[NDADDR + NIADDR];
- off_t length = ap->a_length;
register struct ext2_sb_info *fs;
struct buf *bp;
int offset, size, level;
@@ -180,7 +177,7 @@ ext2_truncate(ap)
int aflags, error, allerror;
off_t osize;
/*
-printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
+printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, length);
*/ /*
* negative file sizes will totally break the code below and
* are not meaningful anyways.
@@ -221,10 +218,10 @@ printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
offset = blkoff(fs, length - 1);
lbn = lblkno(fs, length - 1);
aflags = B_CLRBUF;
- if (ap->a_flags & IO_SYNC)
+ if (flags & IO_SYNC)
aflags |= B_SYNC;
vnode_pager_setsize(ovp, length);
- if (error = ext2_balloc(oip, lbn, offset + 1, ap->a_cred, &bp,
+ if (error = ext2_balloc(oip, lbn, offset + 1, cred, &bp,
aflags))
return (error);
oip->i_size = length;
@@ -252,9 +249,9 @@ printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
} else {
lbn = lblkno(fs, length);
aflags = B_CLRBUF;
- if (ap->a_flags & IO_SYNC)
+ if (flags & IO_SYNC)
aflags |= B_SYNC;
- if (error = ext2_balloc(oip, lbn, offset, ap->a_cred, &bp,
+ if (error = ext2_balloc(oip, lbn, offset, cred, &bp,
aflags))
return (error);
oip->i_size = length;
@@ -307,7 +304,7 @@ printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
bcopy((caddr_t)oldblks, (caddr_t)&oip->i_db[0], sizeof oldblks);
oip->i_size = osize;
vflags = ((length > 0) ? V_SAVE : 0) | V_SAVEMETA;
- allerror = vinvalbuf(ovp, vflags, ap->a_cred, ap->a_p, 0, 0);
+ allerror = vinvalbuf(ovp, vflags, cred, p, 0, 0);
/*
* Indirect blocks first.
diff --git a/sys/gnu/ext2fs/ext2_lookup.c b/sys/gnu/ext2fs/ext2_lookup.c
index 07991e9..686e89d 100644
--- a/sys/gnu/ext2fs/ext2_lookup.c
+++ b/sys/gnu/ext2fs/ext2_lookup.c
@@ -349,7 +349,7 @@ ext2_lookup(ap)
} else {
dp->i_offset = dp->i_diroff;
if ((entryoffsetinblock = dp->i_offset & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
+ (error = UFS_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
return (error);
numdirpasses = 2;
nchstats.ncs_2passes++;
@@ -367,7 +367,7 @@ searchloop:
if (bp != NULL)
brelse(bp);
if (error =
- VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp))
+ UFS_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp))
return (error);
entryoffsetinblock = 0;
}
@@ -802,7 +802,7 @@ ext2_direnter(ip, dvp, cnp)
/*
* Get the block containing the space for the new directory entry.
*/
- if (error = VOP_BLKATOFF(dvp, (off_t)dp->i_offset, &dirbuf, &bp))
+ if (error = UFS_BLKATOFF(dvp, (off_t)dp->i_offset, &dirbuf, &bp))
return (error);
/*
* Find space for the new entry. In the simple case, the entry at
@@ -848,7 +848,7 @@ ext2_direnter(ip, dvp, cnp)
error = VOP_BWRITE(bp);
dp->i_flag |= IN_CHANGE | IN_UPDATE;
if (!error && dp->i_endoff && dp->i_endoff < dp->i_size)
- error = VOP_TRUNCATE(dvp, (off_t)dp->i_endoff, IO_SYNC,
+ error = UFS_TRUNCATE(dvp, (off_t)dp->i_endoff, IO_SYNC,
cnp->cn_cred, cnp->cn_proc);
return (error);
}
@@ -881,7 +881,7 @@ ext2_dirremove(dvp, cnp)
* First entry in block: set d_ino to zero.
*/
if (error =
- VOP_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp))
+ UFS_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp))
return (error);
ep->inode = 0;
error = VOP_BWRITE(bp);
@@ -891,7 +891,7 @@ ext2_dirremove(dvp, cnp)
/*
* Collapse new free space into previous entry.
*/
- if (error = VOP_BLKATOFF(dvp, (off_t)(dp->i_offset - dp->i_count),
+ if (error = UFS_BLKATOFF(dvp, (off_t)(dp->i_offset - dp->i_count),
(char **)&ep, &bp))
return (error);
ep->rec_len += dp->i_reclen;
@@ -915,7 +915,7 @@ ext2_dirrewrite(dp, ip, cnp)
struct vnode *vdp = ITOV(dp);
int error;
- if (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, (char **)&ep, &bp))
+ if (error = UFS_BLKATOFF(vdp, (off_t)dp->i_offset, (char **)&ep, &bp))
return (error);
ep->inode = ip->i_number;
error = VOP_BWRITE(bp);
diff --git a/sys/gnu/ext2fs/ext2_mount.h b/sys/gnu/ext2fs/ext2_mount.h
index d57dd59..50bfe57 100644
--- a/sys/gnu/ext2fs/ext2_mount.h
+++ b/sys/gnu/ext2fs/ext2_mount.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ufsmount.h 8.6 (Berkeley) 3/30/95
- * $Id: ufsmount.h,v 1.9 1997/10/10 18:18:13 phk Exp $
+ * $Id: ufsmount.h,v 1.10 1997/10/12 20:26:28 phk Exp $
*/
#ifndef _UFS_UFS_UFSMOUNT_H_
@@ -97,8 +97,17 @@ struct ufsmount {
struct netexport um_export; /* export information */
int64_t um_savedmaxfilesize; /* XXX - limit maxfilesize */
struct malloc_type *um_malloctype; /* The inodes malloctype */
+ int (*um_blkatoff) __P((struct vnode *, off_t, char **, struct buf **));
+ int (*um_truncate) __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
+ int (*um_valloc) __P((struct vnode *, int, struct ucred *, struct vnode **));
+ int (*um_vfree) __P((struct vnode *, ino_t, int));
};
+#define UFS_BLKATOFF(aa, bb, cc, dd) VFSTOUFS((aa)->v_mount)->um_blkatoff(aa, bb, cc, dd)
+#define UFS_TRUNCATE(aa, bb, cc, dd, ee) VFSTOUFS((aa)->v_mount)->um_truncate(aa, bb, cc, dd, ee)
+#define UFS_VALLOC(aa, bb, cc, dd) VFSTOUFS((aa)->v_mount)->um_valloc(aa, bb, cc, dd)
+#define UFS_VFREE(aa, bb, cc) VFSTOUFS((aa)->v_mount)->um_vfree(aa, bb, cc)
+
/*
* Flags describing the state of quotas.
*/
diff --git a/sys/gnu/ext2fs/ext2_readwrite.c b/sys/gnu/ext2fs/ext2_readwrite.c
index 986bc14..e1ab506 100644
--- a/sys/gnu/ext2fs/ext2_readwrite.c
+++ b/sys/gnu/ext2fs/ext2_readwrite.c
@@ -307,7 +307,7 @@ WRITE(ap)
ip->i_mode &= ~(ISUID | ISGID);
if (error) {
if (ioflag & IO_UNIT) {
- (void)VOP_TRUNCATE(vp, osize,
+ (void)UFS_TRUNCATE(vp, osize,
ioflag & IO_SYNC, ap->a_cred, uio->uio_procp);
uio->uio_offset -= resid - uio->uio_resid;
uio->uio_resid = resid;
diff --git a/sys/gnu/ext2fs/ext2_subr.c b/sys/gnu/ext2fs/ext2_subr.c
index 399f973..8083b96 100644
--- a/sys/gnu/ext2fs/ext2_subr.c
+++ b/sys/gnu/ext2fs/ext2_subr.c
@@ -56,13 +56,11 @@
* remaining space in the directory.
*/
int
-ext2_blkatoff(ap)
- struct vop_blkatoff_args /* {
- struct vnode *a_vp;
- off_t a_offset;
- char **a_res;
- struct buf **a_bpp;
- } */ *ap;
+ext2_blkatoff(vp, offset, res, bpp)
+ struct vnode *vp;
+ off_t offset;
+ char **res;
+ struct buf **bpp;
{
struct inode *ip;
register struct ext2_sb_info *fs;
@@ -70,19 +68,19 @@ ext2_blkatoff(ap)
daddr_t lbn;
int bsize, error;
- ip = VTOI(ap->a_vp);
+ ip = VTOI(vp);
fs = ip->i_e2fs;
- lbn = lblkno(fs, ap->a_offset);
+ lbn = lblkno(fs, offset);
bsize = blksize(fs, ip, lbn);
- *ap->a_bpp = NULL;
- if (error = bread(ap->a_vp, lbn, bsize, NOCRED, &bp)) {
+ *bpp = NULL;
+ if (error = bread(vp, lbn, bsize, NOCRED, &bp)) {
brelse(bp);
return (error);
}
- if (ap->a_res)
- *ap->a_res = (char *)bp->b_data + blkoff(fs, ap->a_offset);
- *ap->a_bpp = bp;
+ if (res)
+ *res = (char *)bp->b_data + blkoff(fs, offset);
+ *bpp = bp;
return (0);
}
diff --git a/sys/gnu/ext2fs/ext2_vfsops.c b/sys/gnu/ext2fs/ext2_vfsops.c
index 9338279..95ffa52 100644
--- a/sys/gnu/ext2fs/ext2_vfsops.c
+++ b/sys/gnu/ext2fs/ext2_vfsops.c
@@ -621,6 +621,10 @@ ext2_mountfs(devvp, mp, p)
ump = bsd_malloc(sizeof *ump, M_UFSMNT, M_WAITOK);
bzero((caddr_t)ump, sizeof *ump);
ump->um_malloctype = M_EXT2NODE;
+ ump->um_blkatoff = ext2_blkatoff;
+ ump->um_truncate = ext2_truncate;
+ ump->um_valloc = ext2_valloc;
+ ump->um_vfree = ext2_vfree;
/* I don't know whether this is the right strategy. Note that
we dynamically allocate both a ext2_sb_info and a ext2_super_block
while Linux keeps the super block in a locked buffer
diff --git a/sys/gnu/ext2fs/ext2_vnops.c b/sys/gnu/ext2fs/ext2_vnops.c
index 97225aa..48b5907 100644
--- a/sys/gnu/ext2fs/ext2_vnops.c
+++ b/sys/gnu/ext2fs/ext2_vnops.c
@@ -69,6 +69,7 @@
#endif
#include <ufs/ufs/quota.h>
#include <ufs/ufs/inode.h>
+#include <ufs/ufs/ufsmount.h>
#include <ufs/ufs/ufs_extern.h>
#include <ufs/ffs/ffs_extern.h>
@@ -84,17 +85,13 @@ static int ext2_write __P((struct vop_write_args *));
vop_t **ext2_vnodeop_p;
static struct vnodeopv_entry_desc ext2_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) ufs_vnoperate },
- { &vop_blkatoff_desc, (vop_t *) ext2_blkatoff },
{ &vop_cachedlookup_desc, (vop_t *) ext2_lookup },
{ &vop_fsync_desc, (vop_t *) ext2_fsync },
{ &vop_inactive_desc, (vop_t *) ext2_inactive },
{ &vop_read_desc, (vop_t *) ext2_read },
{ &vop_readdir_desc, (vop_t *) ext2_readdir },
{ &vop_reallocblks_desc, (vop_t *) ext2_reallocblks },
- { &vop_truncate_desc, (vop_t *) ext2_truncate },
{ &vop_update_desc, (vop_t *) ext2_update },
- { &vop_valloc_desc, (vop_t *) ext2_valloc },
- { &vop_vfree_desc, (vop_t *) ext2_vfree },
{ &vop_write_desc, (vop_t *) ext2_write },
{ NULL, NULL }
};
@@ -107,7 +104,6 @@ static struct vnodeopv_entry_desc ext2_specop_entries[] = {
{ &vop_fsync_desc, (vop_t *) ext2_fsync },
{ &vop_inactive_desc, (vop_t *) ext2_inactive },
{ &vop_update_desc, (vop_t *) ext2_update },
- { &vop_vfree_desc, (vop_t *) ext2_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc ext2fs_specop_opv_desc =
@@ -119,7 +115,6 @@ static struct vnodeopv_entry_desc ext2_fifoop_entries[] = {
{ &vop_fsync_desc, (vop_t *) ext2_fsync },
{ &vop_inactive_desc, (vop_t *) ext2_inactive },
{ &vop_update_desc, (vop_t *) ext2_update },
- { &vop_vfree_desc, (vop_t *) ext2_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc ext2fs_fifoop_opv_desc =
diff --git a/sys/gnu/fs/ext2fs/ext2_alloc.c b/sys/gnu/fs/ext2fs/ext2_alloc.c
index 64e9b87..f78b6a5 100644
--- a/sys/gnu/fs/ext2fs/ext2_alloc.c
+++ b/sys/gnu/fs/ext2fs/ext2_alloc.c
@@ -56,6 +56,7 @@
#include <ufs/ufs/quota.h>
#include <ufs/ufs/inode.h>
+#include <ufs/ufs/ufsmount.h>
#include <gnu/ext2fs/ext2_fs.h>
#include <gnu/ext2fs/ext2_fs_sb.h>
@@ -383,26 +384,22 @@ fail:
* ext2_new_inode(), to make sure we get the policies right
*/
int
-ext2_valloc(ap)
- struct vop_valloc_args /* {
- struct vnode *a_pvp;
- int a_mode;
- struct ucred *a_cred;
- struct vnode **a_vpp;
- } */ *ap;
+ext2_valloc(pvp, mode, cred, vpp)
+ struct vnode *pvp;
+ int mode;
+ struct ucred *cred;
+ struct vnode **vpp;
{
- register struct vnode *pvp = ap->a_pvp;
register struct inode *pip;
register struct ext2_sb_info *fs;
register struct inode *ip;
- mode_t mode = ap->a_mode;
ino_t ino;
int i, error;
#if !defined(__FreeBSD__)
struct timeval time;
#endif
- *ap->a_vpp = NULL;
+ *vpp = NULL;
pip = VTOI(pvp);
fs = pip->i_e2fs;
if (fs->s_es->s_free_inodes_count == 0)
@@ -413,12 +410,12 @@ ext2_valloc(ap)
if (ino == 0)
goto noinodes;
- error = VFS_VGET(pvp->v_mount, ino, ap->a_vpp);
+ error = VFS_VGET(pvp->v_mount, ino, vpp);
if (error) {
- VOP_VFREE(pvp, ino, mode);
+ UFS_VFREE(pvp, ino, mode);
return (error);
}
- ip = VTOI(*ap->a_vpp);
+ ip = VTOI(*vpp);
/*
the question is whether using VGET was such good idea at all -
@@ -448,7 +445,7 @@ printf("ext2_valloc: allocated inode %d\n", ino);
*/
return (0);
noinodes:
- ext2_fserr(fs, ap->a_cred->cr_uid, "out of inodes");
+ ext2_fserr(fs, cred->cr_uid, "out of inodes");
uprintf("\n%s: create/symlink failed, no inodes free\n", fs->fs_fsmnt);
return (ENOSPC);
}
@@ -525,25 +522,21 @@ ext2_blkfree(ip, bno, size)
* the maintenance of the actual bitmaps is again up to the linux code
*/
int
-ext2_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
+ext2_vfree(pvp, ino, mode)
+ struct vnode *pvp;
+ ino_t ino;
+ int mode;
{
register struct ext2_sb_info *fs;
register struct inode *pip;
- ino_t ino = ap->a_ino;
- int mode;
- pip = VTOI(ap->a_pvp);
+ pip = VTOI(pvp);
fs = pip->i_e2fs;
if ((u_int)ino >= fs->s_inodes_per_group * fs->s_groups_count)
panic("ifree: range: dev = 0x%x, ino = %d, fs = %s",
pip->i_dev, ino, fs->fs_fsmnt);
-/* ext2_debug("ext2_vfree (%d, %d) called\n", pip->i_number, ap->a_mode);
+/* ext2_debug("ext2_vfree (%d, %d) called\n", pip->i_number, mode);
*/
ext2_discard_prealloc(pip);
@@ -553,7 +546,7 @@ ext2_vfree(ap)
'set i_mode to zero to denote an unused inode' is
*/
mode = pip->i_mode;
- pip->i_mode = ap->a_mode;
+ pip->i_mode = mode;
ext2_free_inode(pip);
pip->i_mode = mode;
return (0);
diff --git a/sys/gnu/fs/ext2fs/ext2_extern.h b/sys/gnu/fs/ext2fs/ext2_extern.h
index 4c32799..b185f52 100644
--- a/sys/gnu/fs/ext2fs/ext2_extern.h
+++ b/sys/gnu/fs/ext2fs/ext2_extern.h
@@ -53,7 +53,7 @@ int ext2_alloc __P((struct inode *,
daddr_t, daddr_t, int, struct ucred *, daddr_t *));
int ext2_balloc __P((struct inode *,
daddr_t, int, struct ucred *, struct buf **, int));
-int ext2_blkatoff __P((struct vop_blkatoff_args *));
+int ext2_blkatoff __P((struct vnode *, off_t, char **, struct buf **));
void ext2_blkfree __P((struct inode *, daddr_t, long));
daddr_t ext2_blkpref __P((struct inode *, daddr_t, int, daddr_t *, daddr_t));
int ext2_bmap __P((struct vop_bmap_args *));
@@ -61,10 +61,10 @@ int ext2_init __P((struct vfsconf *));
int ext2_reallocblks __P((struct vop_reallocblks_args *));
int ext2_reclaim __P((struct vop_reclaim_args *));
void ext2_setblock __P((struct ext2_sb_info *, u_char *, daddr_t));
-int ext2_truncate __P((struct vop_truncate_args *));
+int ext2_truncate __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
int ext2_update __P((struct vop_update_args *));
-int ext2_valloc __P((struct vop_valloc_args *));
-int ext2_vfree __P((struct vop_vfree_args *));
+int ext2_valloc __P((struct vnode *, int, struct ucred *, struct vnode **));
+int ext2_vfree __P((struct vnode *, ino_t, int));
int ext2_lookup __P((struct vop_cachedlookup_args *));
int ext2_readdir __P((struct vop_readdir_args *));
void ext2_print_dinode __P((struct dinode *));
diff --git a/sys/gnu/fs/ext2fs/ext2_inode.c b/sys/gnu/fs/ext2fs/ext2_inode.c
index bc2b1e6..0514022 100644
--- a/sys/gnu/fs/ext2fs/ext2_inode.c
+++ b/sys/gnu/fs/ext2fs/ext2_inode.c
@@ -156,21 +156,18 @@ ext2_update(ap)
* disk blocks.
*/
int
-ext2_truncate(ap)
- struct vop_truncate_args /* {
- struct vnode *a_vp;
- off_t a_length;
- int a_flags;
- struct ucred *a_cred;
- struct proc *a_p;
- } */ *ap;
+ext2_truncate(vp, length, flags, cred, p)
+ struct vnode *vp;
+ off_t length;
+ int flags;
+ struct ucred *cred;
+ struct proc *p;
{
- register struct vnode *ovp = ap->a_vp;
+ register struct vnode *ovp = vp;
register daddr_t lastblock;
register struct inode *oip;
daddr_t bn, lbn, lastiblock[NIADDR], indir_lbn[NIADDR];
daddr_t oldblks[NDADDR + NIADDR], newblks[NDADDR + NIADDR];
- off_t length = ap->a_length;
register struct ext2_sb_info *fs;
struct buf *bp;
int offset, size, level;
@@ -180,7 +177,7 @@ ext2_truncate(ap)
int aflags, error, allerror;
off_t osize;
/*
-printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
+printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, length);
*/ /*
* negative file sizes will totally break the code below and
* are not meaningful anyways.
@@ -221,10 +218,10 @@ printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
offset = blkoff(fs, length - 1);
lbn = lblkno(fs, length - 1);
aflags = B_CLRBUF;
- if (ap->a_flags & IO_SYNC)
+ if (flags & IO_SYNC)
aflags |= B_SYNC;
vnode_pager_setsize(ovp, length);
- if (error = ext2_balloc(oip, lbn, offset + 1, ap->a_cred, &bp,
+ if (error = ext2_balloc(oip, lbn, offset + 1, cred, &bp,
aflags))
return (error);
oip->i_size = length;
@@ -252,9 +249,9 @@ printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
} else {
lbn = lblkno(fs, length);
aflags = B_CLRBUF;
- if (ap->a_flags & IO_SYNC)
+ if (flags & IO_SYNC)
aflags |= B_SYNC;
- if (error = ext2_balloc(oip, lbn, offset, ap->a_cred, &bp,
+ if (error = ext2_balloc(oip, lbn, offset, cred, &bp,
aflags))
return (error);
oip->i_size = length;
@@ -307,7 +304,7 @@ printf("ext2_truncate called %d to %d\n", VTOI(ovp)->i_number, ap->a_length);
bcopy((caddr_t)oldblks, (caddr_t)&oip->i_db[0], sizeof oldblks);
oip->i_size = osize;
vflags = ((length > 0) ? V_SAVE : 0) | V_SAVEMETA;
- allerror = vinvalbuf(ovp, vflags, ap->a_cred, ap->a_p, 0, 0);
+ allerror = vinvalbuf(ovp, vflags, cred, p, 0, 0);
/*
* Indirect blocks first.
diff --git a/sys/gnu/fs/ext2fs/ext2_lookup.c b/sys/gnu/fs/ext2fs/ext2_lookup.c
index 07991e9..686e89d 100644
--- a/sys/gnu/fs/ext2fs/ext2_lookup.c
+++ b/sys/gnu/fs/ext2fs/ext2_lookup.c
@@ -349,7 +349,7 @@ ext2_lookup(ap)
} else {
dp->i_offset = dp->i_diroff;
if ((entryoffsetinblock = dp->i_offset & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
+ (error = UFS_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
return (error);
numdirpasses = 2;
nchstats.ncs_2passes++;
@@ -367,7 +367,7 @@ searchloop:
if (bp != NULL)
brelse(bp);
if (error =
- VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp))
+ UFS_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp))
return (error);
entryoffsetinblock = 0;
}
@@ -802,7 +802,7 @@ ext2_direnter(ip, dvp, cnp)
/*
* Get the block containing the space for the new directory entry.
*/
- if (error = VOP_BLKATOFF(dvp, (off_t)dp->i_offset, &dirbuf, &bp))
+ if (error = UFS_BLKATOFF(dvp, (off_t)dp->i_offset, &dirbuf, &bp))
return (error);
/*
* Find space for the new entry. In the simple case, the entry at
@@ -848,7 +848,7 @@ ext2_direnter(ip, dvp, cnp)
error = VOP_BWRITE(bp);
dp->i_flag |= IN_CHANGE | IN_UPDATE;
if (!error && dp->i_endoff && dp->i_endoff < dp->i_size)
- error = VOP_TRUNCATE(dvp, (off_t)dp->i_endoff, IO_SYNC,
+ error = UFS_TRUNCATE(dvp, (off_t)dp->i_endoff, IO_SYNC,
cnp->cn_cred, cnp->cn_proc);
return (error);
}
@@ -881,7 +881,7 @@ ext2_dirremove(dvp, cnp)
* First entry in block: set d_ino to zero.
*/
if (error =
- VOP_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp))
+ UFS_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp))
return (error);
ep->inode = 0;
error = VOP_BWRITE(bp);
@@ -891,7 +891,7 @@ ext2_dirremove(dvp, cnp)
/*
* Collapse new free space into previous entry.
*/
- if (error = VOP_BLKATOFF(dvp, (off_t)(dp->i_offset - dp->i_count),
+ if (error = UFS_BLKATOFF(dvp, (off_t)(dp->i_offset - dp->i_count),
(char **)&ep, &bp))
return (error);
ep->rec_len += dp->i_reclen;
@@ -915,7 +915,7 @@ ext2_dirrewrite(dp, ip, cnp)
struct vnode *vdp = ITOV(dp);
int error;
- if (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, (char **)&ep, &bp))
+ if (error = UFS_BLKATOFF(vdp, (off_t)dp->i_offset, (char **)&ep, &bp))
return (error);
ep->inode = ip->i_number;
error = VOP_BWRITE(bp);
diff --git a/sys/gnu/fs/ext2fs/ext2_mount.h b/sys/gnu/fs/ext2fs/ext2_mount.h
index d57dd59..50bfe57 100644
--- a/sys/gnu/fs/ext2fs/ext2_mount.h
+++ b/sys/gnu/fs/ext2fs/ext2_mount.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ufsmount.h 8.6 (Berkeley) 3/30/95
- * $Id: ufsmount.h,v 1.9 1997/10/10 18:18:13 phk Exp $
+ * $Id: ufsmount.h,v 1.10 1997/10/12 20:26:28 phk Exp $
*/
#ifndef _UFS_UFS_UFSMOUNT_H_
@@ -97,8 +97,17 @@ struct ufsmount {
struct netexport um_export; /* export information */
int64_t um_savedmaxfilesize; /* XXX - limit maxfilesize */
struct malloc_type *um_malloctype; /* The inodes malloctype */
+ int (*um_blkatoff) __P((struct vnode *, off_t, char **, struct buf **));
+ int (*um_truncate) __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
+ int (*um_valloc) __P((struct vnode *, int, struct ucred *, struct vnode **));
+ int (*um_vfree) __P((struct vnode *, ino_t, int));
};
+#define UFS_BLKATOFF(aa, bb, cc, dd) VFSTOUFS((aa)->v_mount)->um_blkatoff(aa, bb, cc, dd)
+#define UFS_TRUNCATE(aa, bb, cc, dd, ee) VFSTOUFS((aa)->v_mount)->um_truncate(aa, bb, cc, dd, ee)
+#define UFS_VALLOC(aa, bb, cc, dd) VFSTOUFS((aa)->v_mount)->um_valloc(aa, bb, cc, dd)
+#define UFS_VFREE(aa, bb, cc) VFSTOUFS((aa)->v_mount)->um_vfree(aa, bb, cc)
+
/*
* Flags describing the state of quotas.
*/
diff --git a/sys/gnu/fs/ext2fs/ext2_readwrite.c b/sys/gnu/fs/ext2fs/ext2_readwrite.c
index 986bc14..e1ab506 100644
--- a/sys/gnu/fs/ext2fs/ext2_readwrite.c
+++ b/sys/gnu/fs/ext2fs/ext2_readwrite.c
@@ -307,7 +307,7 @@ WRITE(ap)
ip->i_mode &= ~(ISUID | ISGID);
if (error) {
if (ioflag & IO_UNIT) {
- (void)VOP_TRUNCATE(vp, osize,
+ (void)UFS_TRUNCATE(vp, osize,
ioflag & IO_SYNC, ap->a_cred, uio->uio_procp);
uio->uio_offset -= resid - uio->uio_resid;
uio->uio_resid = resid;
diff --git a/sys/gnu/fs/ext2fs/ext2_subr.c b/sys/gnu/fs/ext2fs/ext2_subr.c
index 399f973..8083b96 100644
--- a/sys/gnu/fs/ext2fs/ext2_subr.c
+++ b/sys/gnu/fs/ext2fs/ext2_subr.c
@@ -56,13 +56,11 @@
* remaining space in the directory.
*/
int
-ext2_blkatoff(ap)
- struct vop_blkatoff_args /* {
- struct vnode *a_vp;
- off_t a_offset;
- char **a_res;
- struct buf **a_bpp;
- } */ *ap;
+ext2_blkatoff(vp, offset, res, bpp)
+ struct vnode *vp;
+ off_t offset;
+ char **res;
+ struct buf **bpp;
{
struct inode *ip;
register struct ext2_sb_info *fs;
@@ -70,19 +68,19 @@ ext2_blkatoff(ap)
daddr_t lbn;
int bsize, error;
- ip = VTOI(ap->a_vp);
+ ip = VTOI(vp);
fs = ip->i_e2fs;
- lbn = lblkno(fs, ap->a_offset);
+ lbn = lblkno(fs, offset);
bsize = blksize(fs, ip, lbn);
- *ap->a_bpp = NULL;
- if (error = bread(ap->a_vp, lbn, bsize, NOCRED, &bp)) {
+ *bpp = NULL;
+ if (error = bread(vp, lbn, bsize, NOCRED, &bp)) {
brelse(bp);
return (error);
}
- if (ap->a_res)
- *ap->a_res = (char *)bp->b_data + blkoff(fs, ap->a_offset);
- *ap->a_bpp = bp;
+ if (res)
+ *res = (char *)bp->b_data + blkoff(fs, offset);
+ *bpp = bp;
return (0);
}
diff --git a/sys/gnu/fs/ext2fs/ext2_vfsops.c b/sys/gnu/fs/ext2fs/ext2_vfsops.c
index 9338279..95ffa52 100644
--- a/sys/gnu/fs/ext2fs/ext2_vfsops.c
+++ b/sys/gnu/fs/ext2fs/ext2_vfsops.c
@@ -621,6 +621,10 @@ ext2_mountfs(devvp, mp, p)
ump = bsd_malloc(sizeof *ump, M_UFSMNT, M_WAITOK);
bzero((caddr_t)ump, sizeof *ump);
ump->um_malloctype = M_EXT2NODE;
+ ump->um_blkatoff = ext2_blkatoff;
+ ump->um_truncate = ext2_truncate;
+ ump->um_valloc = ext2_valloc;
+ ump->um_vfree = ext2_vfree;
/* I don't know whether this is the right strategy. Note that
we dynamically allocate both a ext2_sb_info and a ext2_super_block
while Linux keeps the super block in a locked buffer
diff --git a/sys/gnu/fs/ext2fs/ext2_vnops.c b/sys/gnu/fs/ext2fs/ext2_vnops.c
index 97225aa..48b5907 100644
--- a/sys/gnu/fs/ext2fs/ext2_vnops.c
+++ b/sys/gnu/fs/ext2fs/ext2_vnops.c
@@ -69,6 +69,7 @@
#endif
#include <ufs/ufs/quota.h>
#include <ufs/ufs/inode.h>
+#include <ufs/ufs/ufsmount.h>
#include <ufs/ufs/ufs_extern.h>
#include <ufs/ffs/ffs_extern.h>
@@ -84,17 +85,13 @@ static int ext2_write __P((struct vop_write_args *));
vop_t **ext2_vnodeop_p;
static struct vnodeopv_entry_desc ext2_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) ufs_vnoperate },
- { &vop_blkatoff_desc, (vop_t *) ext2_blkatoff },
{ &vop_cachedlookup_desc, (vop_t *) ext2_lookup },
{ &vop_fsync_desc, (vop_t *) ext2_fsync },
{ &vop_inactive_desc, (vop_t *) ext2_inactive },
{ &vop_read_desc, (vop_t *) ext2_read },
{ &vop_readdir_desc, (vop_t *) ext2_readdir },
{ &vop_reallocblks_desc, (vop_t *) ext2_reallocblks },
- { &vop_truncate_desc, (vop_t *) ext2_truncate },
{ &vop_update_desc, (vop_t *) ext2_update },
- { &vop_valloc_desc, (vop_t *) ext2_valloc },
- { &vop_vfree_desc, (vop_t *) ext2_vfree },
{ &vop_write_desc, (vop_t *) ext2_write },
{ NULL, NULL }
};
@@ -107,7 +104,6 @@ static struct vnodeopv_entry_desc ext2_specop_entries[] = {
{ &vop_fsync_desc, (vop_t *) ext2_fsync },
{ &vop_inactive_desc, (vop_t *) ext2_inactive },
{ &vop_update_desc, (vop_t *) ext2_update },
- { &vop_vfree_desc, (vop_t *) ext2_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc ext2fs_specop_opv_desc =
@@ -119,7 +115,6 @@ static struct vnodeopv_entry_desc ext2_fifoop_entries[] = {
{ &vop_fsync_desc, (vop_t *) ext2_fsync },
{ &vop_inactive_desc, (vop_t *) ext2_inactive },
{ &vop_update_desc, (vop_t *) ext2_update },
- { &vop_vfree_desc, (vop_t *) ext2_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc ext2fs_fifoop_opv_desc =
diff --git a/sys/isofs/cd9660/cd9660_lookup.c b/sys/isofs/cd9660/cd9660_lookup.c
index d416a98..cf36e92 100644
--- a/sys/isofs/cd9660/cd9660_lookup.c
+++ b/sys/isofs/cd9660/cd9660_lookup.c
@@ -38,7 +38,7 @@
* from: @(#)ufs_lookup.c 7.33 (Berkeley) 5/19/91
*
* @(#)cd9660_lookup.c 8.2 (Berkeley) 1/23/94
- * $Id: cd9660_lookup.c,v 1.17 1997/08/26 07:32:30 phk Exp $
+ * $Id: cd9660_lookup.c,v 1.18 1997/09/10 19:43:15 phk Exp $
*/
#include <sys/param.h>
@@ -165,7 +165,7 @@ cd9660_lookup(ap)
} else {
dp->i_offset = dp->i_diroff;
if ((entryoffsetinblock = dp->i_offset & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
+ (error = cd9660_blkatoff(vdp, (off_t)dp->i_offset, NULL, &bp)))
return (error);
numdirpasses = 2;
nchstats.ncs_2passes++;
@@ -183,7 +183,7 @@ searchloop:
if (bp != NULL)
brelse(bp);
if (error =
- VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp))
+ cd9660_blkatoff(vdp, (off_t)dp->i_offset, NULL, &bp))
return (error);
entryoffsetinblock = 0;
}
@@ -280,7 +280,7 @@ foundino:
lblkno(imp, saveoffset)) {
if (bp != NULL)
brelse(bp);
- if (error = VOP_BLKATOFF(vdp,
+ if (error = cd9660_blkatoff(vdp,
(off_t)saveoffset, NULL, &bp))
return (error);
}
@@ -394,13 +394,11 @@ found:
* remaining space in the directory.
*/
int
-cd9660_blkatoff(ap)
- struct vop_blkatoff_args /* {
- struct vnode *a_vp;
- off_t a_offset;
- char **a_res;
- struct buf **a_bpp;
- } */ *ap;
+cd9660_blkatoff(vp, offset, res, bpp)
+ struct vnode *vp;
+ off_t offset;
+ char **res;
+ struct buf **bpp;
{
struct iso_node *ip;
register struct iso_mnt *imp;
@@ -408,18 +406,18 @@ cd9660_blkatoff(ap)
daddr_t lbn;
int bsize, error;
- ip = VTOI(ap->a_vp);
+ ip = VTOI(vp);
imp = ip->i_mnt;
- lbn = lblkno(imp, ap->a_offset);
+ lbn = lblkno(imp, offset);
bsize = blksize(imp, ip, lbn);
- if (error = bread(ap->a_vp, lbn, bsize, NOCRED, &bp)) {
+ if (error = bread(vp, lbn, bsize, NOCRED, &bp)) {
brelse(bp);
- *ap->a_bpp = NULL;
+ *bpp = NULL;
return (error);
}
- if (ap->a_res)
- *ap->a_res = (char *)bp->b_data + blkoff(imp, ap->a_offset);
- *ap->a_bpp = bp;
+ if (res)
+ *res = (char *)bp->b_data + blkoff(imp, offset);
+ *bpp = bp;
return (0);
}
diff --git a/sys/isofs/cd9660/cd9660_node.c b/sys/isofs/cd9660/cd9660_node.c
index 8db9633..0ac56f8 100644
--- a/sys/isofs/cd9660/cd9660_node.c
+++ b/sys/isofs/cd9660/cd9660_node.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_node.c 8.2 (Berkeley) 1/23/94
- * $Id: cd9660_node.c,v 1.19 1997/04/14 18:15:45 phk Exp $
+ * $Id: cd9660_node.c,v 1.20 1997/08/02 14:31:18 bde Exp $
*/
#include <sys/param.h>
@@ -241,7 +241,7 @@ cd9660_defattr(isodir, inop, bp, ftype)
if (!bp
&& ((imp = inop->i_mnt)->im_flags & ISOFSMNT_EXTATT)
&& (off = isonum_711(isodir->ext_attr_length))) {
- VOP_BLKATOFF(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
+ cd9660_blkatoff(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
&bp2);
bp = bp2;
}
@@ -293,7 +293,7 @@ cd9660_deftstamp(isodir,inop,bp,ftype)
if (!bp
&& ((imp = inop->i_mnt)->im_flags & ISOFSMNT_EXTATT)
&& (off = isonum_711(isodir->ext_attr_length))) {
- VOP_BLKATOFF(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
+ cd9660_blkatoff(ITOV(inop), (off_t)-(off << imp->im_bshift), NULL,
&bp2);
bp = bp2;
}
diff --git a/sys/isofs/cd9660/cd9660_node.h b/sys/isofs/cd9660/cd9660_node.h
index 92e214f..5c0b721 100644
--- a/sys/isofs/cd9660/cd9660_node.h
+++ b/sys/isofs/cd9660/cd9660_node.h
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_node.h 8.6 (Berkeley) 5/14/95
- * $Id: cd9660_node.h,v 1.12 1997/08/26 07:32:31 phk Exp $
+ * $Id: cd9660_node.h,v 1.13 1997/10/12 20:23:36 phk Exp $
*/
/*
@@ -105,8 +105,7 @@ int cd9660_inactive __P((struct vop_inactive_args *));
int cd9660_reclaim __P((struct vop_reclaim_args *));
int cd9660_bmap __P((struct vop_bmap_args *));
int cd9660_pathconf __P((struct vop_pathconf_args *));
-int cd9660_blkatoff __P((struct vop_blkatoff_args *));
-#define cd9660_revoke vop_revoke
+int cd9660_blkatoff __P((struct vnode *vp, off_t offset, char **res, struct buf **bpp));
void cd9660_defattr __P((struct iso_directory_record *,
struct iso_node *, struct buf *, enum ISO_FTYPE));
diff --git a/sys/isofs/cd9660/cd9660_vfsops.c b/sys/isofs/cd9660/cd9660_vfsops.c
index 3d23f09..d3db4a1 100644
--- a/sys/isofs/cd9660/cd9660_vfsops.c
+++ b/sys/isofs/cd9660/cd9660_vfsops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_vfsops.c 8.18 (Berkeley) 5/22/95
- * $Id: cd9660_vfsops.c,v 1.29 1997/09/27 13:38:48 kato Exp $
+ * $Id: cd9660_vfsops.c,v 1.30 1997/10/12 20:23:38 phk Exp $
*/
#include <sys/param.h>
@@ -765,7 +765,7 @@ cd9660_vget_internal(mp, ino, vpp, relocated, isodir)
ip->iso_start = ino >> imp->im_bshift;
if (bp != 0)
brelse(bp);
- if (error = VOP_BLKATOFF(vp, (off_t)0, NULL, &bp)) {
+ if (error = cd9660_blkatoff(vp, (off_t)0, NULL, &bp)) {
vput(vp);
return (error);
}
@@ -787,7 +787,7 @@ cd9660_vget_internal(mp, ino, vpp, relocated, isodir)
int off;
if ((imp->im_flags & ISOFSMNT_EXTATT)
&& (off = isonum_711(isodir->ext_attr_length)))
- VOP_BLKATOFF(vp, (off_t)-(off << imp->im_bshift), NULL,
+ cd9660_blkatoff(vp, (off_t)-(off << imp->im_bshift), NULL,
&bp2);
else
bp2 = NULL;
diff --git a/sys/isofs/cd9660/cd9660_vnops.c b/sys/isofs/cd9660/cd9660_vnops.c
index 607d7d6..b794436 100644
--- a/sys/isofs/cd9660/cd9660_vnops.c
+++ b/sys/isofs/cd9660/cd9660_vnops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_vnops.c 8.19 (Berkeley) 5/27/95
- * $Id: cd9660_vnops.c,v 1.42 1997/10/15 10:03:58 phk Exp $
+ * $Id: cd9660_vnops.c,v 1.43 1997/10/15 13:22:39 phk Exp $
*/
#include <sys/param.h>
@@ -569,7 +569,7 @@ cd9660_readdir(ap)
idp->curroff = uio->uio_offset;
if ((entryoffsetinblock = idp->curroff & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)idp->curroff, NULL, &bp))) {
+ (error = cd9660_blkatoff(vdp, (off_t)idp->curroff, NULL, &bp))) {
FREE(idp, M_TEMP);
return (error);
}
@@ -585,7 +585,7 @@ cd9660_readdir(ap)
if (bp != NULL)
brelse(bp);
if (error =
- VOP_BLKATOFF(vdp, (off_t)idp->curroff, NULL, &bp))
+ cd9660_blkatoff(vdp, (off_t)idp->curroff, NULL, &bp))
break;
entryoffsetinblock = 0;
}
@@ -953,44 +953,6 @@ cd9660_pathconf(ap)
}
/*
- * Global vfs data structures for isofs
- */
-#define cd9660_create \
- ((int (*) __P((struct vop_create_args *)))eopnotsupp)
-#define cd9660_mknod ((int (*) __P((struct vop_mknod_args *)))eopnotsupp)
-#define cd9660_write ((int (*) __P((struct vop_write_args *)))eopnotsupp)
-#ifdef NFS
-#define cd9660_lease_check lease_check
-#else
-#define cd9660_lease_check ((int (*) __P((struct vop_lease_args *)))nullop)
-#endif
-#define cd9660_poll vop_nopoll
-#define cd9660_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define cd9660_remove \
- ((int (*) __P((struct vop_remove_args *)))eopnotsupp)
-#define cd9660_link ((int (*) __P((struct vop_link_args *)))eopnotsupp)
-#define cd9660_rename \
- ((int (*) __P((struct vop_rename_args *)))eopnotsupp)
-#define cd9660_mkdir ((int (*) __P((struct vop_mkdir_args *)))eopnotsupp)
-#define cd9660_rmdir ((int (*) __P((struct vop_rmdir_args *)))eopnotsupp)
-#define cd9660_symlink \
- ((int (*) __P((struct vop_symlink_args *)))eopnotsupp)
-#define cd9660_advlock \
- ((int (*) __P((struct vop_advlock_args *)))eopnotsupp)
-#define cd9660_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) eopnotsupp)
-#define cd9660_vfree ((int (*) __P((struct vop_vfree_args *)))eopnotsupp)
-#define cd9660_truncate \
- ((int (*) __P((struct vop_truncate_args *)))eopnotsupp)
-#define cd9660_update \
- ((int (*) __P((struct vop_update_args *)))eopnotsupp)
-#define cd9660_bwrite \
- ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp)
-
-/*
* Global vfs data structures for cd9660
*/
vop_t **cd9660_vnodeop_p;
@@ -998,47 +960,28 @@ struct vnodeopv_entry_desc cd9660_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
{ &vop_abortop_desc, (vop_t *) cd9660_abortop },
{ &vop_access_desc, (vop_t *) cd9660_access },
- { &vop_advlock_desc, (vop_t *) cd9660_advlock },
- { &vop_blkatoff_desc, (vop_t *) cd9660_blkatoff },
{ &vop_bmap_desc, (vop_t *) cd9660_bmap },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_cachedlookup_desc, (vop_t *) cd9660_lookup },
{ &vop_close_desc, (vop_t *) cd9660_close },
- { &vop_create_desc, (vop_t *) cd9660_create },
- { &vop_fsync_desc, (vop_t *) cd9660_fsync },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) cd9660_getattr },
{ &vop_inactive_desc, (vop_t *) cd9660_inactive },
{ &vop_ioctl_desc, (vop_t *) cd9660_ioctl },
{ &vop_islocked_desc, (vop_t *) cd9660_islocked },
- { &vop_lease_desc, (vop_t *) cd9660_lease_check },
- { &vop_link_desc, (vop_t *) cd9660_link },
{ &vop_lock_desc, (vop_t *) cd9660_lock },
{ &vop_lookup_desc, (vop_t *) vfs_cache_lookup },
- { &vop_mkdir_desc, (vop_t *) cd9660_mkdir },
- { &vop_mknod_desc, (vop_t *) cd9660_mknod },
{ &vop_mmap_desc, (vop_t *) cd9660_mmap },
{ &vop_open_desc, (vop_t *) cd9660_open },
{ &vop_pathconf_desc, (vop_t *) cd9660_pathconf },
- { &vop_poll_desc, (vop_t *) cd9660_poll },
{ &vop_print_desc, (vop_t *) cd9660_print },
{ &vop_read_desc, (vop_t *) cd9660_read },
{ &vop_readdir_desc, (vop_t *) cd9660_readdir },
{ &vop_readlink_desc, (vop_t *) cd9660_readlink },
{ &vop_reclaim_desc, (vop_t *) cd9660_reclaim },
- { &vop_remove_desc, (vop_t *) cd9660_remove },
- { &vop_rename_desc, (vop_t *) cd9660_rename },
- { &vop_revoke_desc, (vop_t *) cd9660_revoke },
- { &vop_rmdir_desc, (vop_t *) cd9660_rmdir },
{ &vop_seek_desc, (vop_t *) cd9660_seek },
{ &vop_setattr_desc, (vop_t *) cd9660_setattr },
{ &vop_strategy_desc, (vop_t *) cd9660_strategy },
- { &vop_symlink_desc, (vop_t *) cd9660_symlink },
- { &vop_truncate_desc, (vop_t *) cd9660_truncate },
{ &vop_unlock_desc, (vop_t *) cd9660_unlock },
- { &vop_update_desc, (vop_t *) cd9660_update },
- { &vop_valloc_desc, (vop_t *) cd9660_valloc },
- { &vop_vfree_desc, (vop_t *) cd9660_vfree },
- { &vop_write_desc, (vop_t *) cd9660_write },
{ NULL, NULL }
};
static struct vnodeopv_desc cd9660_vnodeop_opv_desc =
@@ -1052,7 +995,6 @@ vop_t **cd9660_specop_p;
struct vnodeopv_entry_desc cd9660_specop_entries[] = {
{ &vop_default_desc, (vop_t *) spec_vnoperate },
{ &vop_access_desc, (vop_t *) cd9660_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_getattr_desc, (vop_t *) cd9660_getattr },
{ &vop_inactive_desc, (vop_t *) cd9660_inactive },
{ &vop_islocked_desc, (vop_t *) cd9660_islocked },
@@ -1061,7 +1003,6 @@ struct vnodeopv_entry_desc cd9660_specop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) cd9660_reclaim },
{ &vop_setattr_desc, (vop_t *) cd9660_setattr },
{ &vop_unlock_desc, (vop_t *) cd9660_unlock },
- { &vop_update_desc, (vop_t *) cd9660_update },
{ NULL, NULL }
};
static struct vnodeopv_desc cd9660_specop_opv_desc =
@@ -1072,7 +1013,6 @@ vop_t **cd9660_fifoop_p;
struct vnodeopv_entry_desc cd9660_fifoop_entries[] = {
{ &vop_default_desc, (vop_t *) fifo_vnoperate },
{ &vop_access_desc, (vop_t *) cd9660_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_getattr_desc, (vop_t *) cd9660_getattr },
{ &vop_inactive_desc, (vop_t *) cd9660_inactive },
{ &vop_islocked_desc, (vop_t *) cd9660_islocked },
@@ -1081,7 +1021,6 @@ struct vnodeopv_entry_desc cd9660_fifoop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) cd9660_reclaim },
{ &vop_setattr_desc, (vop_t *) cd9660_setattr },
{ &vop_unlock_desc, (vop_t *) cd9660_unlock },
- { &vop_update_desc, (vop_t *) cd9660_update },
{ NULL, NULL }
};
static struct vnodeopv_desc cd9660_fifoop_opv_desc =
diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index 49cd2f3..3d76d4f 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_cache.c 8.5 (Berkeley) 3/22/95
- * $Id: vfs_cache.c,v 1.33 1997/09/24 15:54:10 phk Exp $
+ * $Id: vfs_cache.c,v 1.34 1997/10/15 13:22:52 phk Exp $
*/
#include <sys/param.h>
@@ -450,6 +450,5 @@ vfs_cache_lookup(ap)
error = vn_lock(pdp, LK_EXCLUSIVE, p);
if (error)
return (error);
- return (VCALL(vdp, VOFFSET(vop_cachedlookup),
- (struct vop_cachedlookup_args *)ap));
+ return (VOP_CACHEDLOOKUP(ap->a_dvp, ap->a_vpp, ap->a_cnp));
}
diff --git a/sys/kern/vfs_init.c b/sys/kern/vfs_init.c
index 03bd9a6..febde5e 100644
--- a/sys/kern/vfs_init.c
+++ b/sys/kern/vfs_init.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_init.c 8.3 (Berkeley) 1/4/94
- * $Id: vfs_init.c,v 1.28 1997/09/21 04:22:59 dyson Exp $
+ * $Id: vfs_init.c,v 1.29 1997/10/12 20:24:24 phk Exp $
*/
@@ -80,17 +80,6 @@ extern struct vnodeop_desc *vfs_op_descs[];
struct vm_zone *namei_zone;
/*
- * A miscellaneous routine.
- * A generic "default" routine that just returns an error.
- */
-int
-vn_default_error()
-{
-
- return (EOPNOTSUPP);
-}
-
-/*
* vfs_init.c
*
* Allocate and fill in operations vectors.
@@ -283,6 +272,8 @@ vfsinit(dummy)
/*
* This goop is here to support a loadable NFS module... grumble...
+ *
+ * XXX: NFS could plug this into default_vnodeop_p now!
*/
int (*lease_check_hook) __P((struct vop_lease_args *))
= 0;
diff --git a/sys/kern/vnode_if.src b/sys/kern/vnode_if.src
index f22908c..c91c9f3 100644
--- a/sys/kern/vnode_if.src
+++ b/sys/kern/vnode_if.src
@@ -31,7 +31,7 @@
# SUCH DAMAGE.
#
# @(#)vnode_if.src 8.12 (Berkeley) 5/14/95
-# $Id: vnode_if.src,v 1.12 1997/08/25 20:28:49 phk Exp $
+# $Id: vnode_if.src,v 1.13 1997/09/14 02:35:25 peter Exp $
#
#
@@ -440,26 +440,6 @@ vop_advlock {
};
#
-#% blkatoff vp L L L
-#
-vop_blkatoff {
- IN struct vnode *vp;
- IN off_t offset;
- OUT char **res;
- OUT struct buf **bpp;
-};
-
-#
-#% valloc pvp L L L
-#
-vop_valloc {
- IN struct vnode *pvp;
- IN int mode;
- IN struct ucred *cred;
- OUT struct vnode **vpp;
-};
-
-#
#% reallocblks vp L L L
#
vop_reallocblks {
@@ -468,26 +448,6 @@ vop_reallocblks {
};
#
-#% vfree pvp L L L
-#
-vop_vfree {
- IN struct vnode *pvp;
- IN ino_t ino;
- IN int mode;
-};
-
-#
-#% truncate vp L L L
-#
-vop_truncate {
- IN struct vnode *vp;
- IN off_t length;
- IN int flags;
- IN struct ucred *cred;
- IN struct proc *p;
-};
-
-#
#% update vp L L L
#
vop_update {
diff --git a/sys/miscfs/deadfs/dead_vnops.c b/sys/miscfs/deadfs/dead_vnops.c
index 43b531a..3c41130 100644
--- a/sys/miscfs/deadfs/dead_vnops.c
+++ b/sys/miscfs/deadfs/dead_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)dead_vnops.c 8.1 (Berkeley) 6/10/93
- * $Id: dead_vnops.c,v 1.16 1997/10/15 09:20:50 phk Exp $
+ * $Id: dead_vnops.c,v 1.17 1997/10/15 10:04:03 phk Exp $
*/
#include <sys/param.h>
@@ -47,88 +47,48 @@ static int chkvnlock __P((struct vnode *));
static int dead_badop __P((void));
static int dead_ebadf __P((void));
static int dead_lookup __P((struct vop_lookup_args *));
-#define dead_create ((int (*) __P((struct vop_create_args *)))dead_badop)
-#define dead_mknod ((int (*) __P((struct vop_mknod_args *)))dead_badop)
static int dead_open __P((struct vop_open_args *));
-#define dead_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define dead_access ((int (*) __P((struct vop_access_args *)))dead_ebadf)
-#define dead_getattr ((int (*) __P((struct vop_getattr_args *)))dead_ebadf)
-#define dead_setattr ((int (*) __P((struct vop_setattr_args *)))dead_ebadf)
static int dead_read __P((struct vop_read_args *));
static int dead_write __P((struct vop_write_args *));
static int dead_ioctl __P((struct vop_ioctl_args *));
-#define dead_poll vop_nopoll
-#define dead_mmap ((int (*) __P((struct vop_mmap_args *)))dead_badop)
-#define dead_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define dead_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define dead_remove ((int (*) __P((struct vop_remove_args *)))dead_badop)
-#define dead_link ((int (*) __P((struct vop_link_args *)))dead_badop)
-#define dead_rename ((int (*) __P((struct vop_rename_args *)))dead_badop)
-#define dead_mkdir ((int (*) __P((struct vop_mkdir_args *)))dead_badop)
-#define dead_rmdir ((int (*) __P((struct vop_rmdir_args *)))dead_badop)
-#define dead_symlink ((int (*) __P((struct vop_symlink_args *)))dead_badop)
-#define dead_readdir ((int (*) __P((struct vop_readdir_args *)))dead_ebadf)
-#define dead_readlink ((int (*) __P((struct vop_readlink_args *)))dead_ebadf)
-#define dead_abortop ((int (*) __P((struct vop_abortop_args *)))dead_badop)
-#define dead_inactive ((int (*) __P((struct vop_inactive_args *)))nullop)
-#define dead_reclaim ((int (*) __P((struct vop_reclaim_args *)))nullop)
static int dead_lock __P((struct vop_lock_args *));
-#define dead_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
static int dead_bmap __P((struct vop_bmap_args *));
-static int dead_strategy __P((struct vop_strategy_args *));
static int dead_print __P((struct vop_print_args *));
-#define dead_islocked ((int(*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define dead_pathconf ((int (*) __P((struct vop_pathconf_args *)))dead_ebadf)
-#define dead_advlock ((int (*) __P((struct vop_advlock_args *)))dead_ebadf)
-#define dead_blkatoff ((int (*) __P((struct vop_blkatoff_args *)))dead_badop)
-#define dead_valloc ((int (*) __P((struct vop_valloc_args *)))dead_badop)
-#define dead_vfree ((int (*) __P((struct vop_vfree_args *)))dead_badop)
-#define dead_truncate ((int (*) __P((struct vop_truncate_args *)))nullop)
-#define dead_update ((int (*) __P((struct vop_update_args *)))nullop)
-#define dead_bwrite ((int (*) __P((struct vop_bwrite_args *)))nullop)
vop_t **dead_vnodeop_p;
static struct vnodeopv_entry_desc dead_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) dead_abortop },
- { &vop_access_desc, (vop_t *) dead_access },
- { &vop_advlock_desc, (vop_t *) dead_advlock },
- { &vop_blkatoff_desc, (vop_t *) dead_blkatoff },
+ { &vop_access_desc, (vop_t *) dead_ebadf },
+ { &vop_advlock_desc, (vop_t *) dead_ebadf },
{ &vop_bmap_desc, (vop_t *) dead_bmap },
- { &vop_bwrite_desc, (vop_t *) dead_bwrite },
- { &vop_close_desc, (vop_t *) dead_close },
- { &vop_create_desc, (vop_t *) dead_create },
- { &vop_fsync_desc, (vop_t *) dead_fsync },
- { &vop_getattr_desc, (vop_t *) dead_getattr },
- { &vop_inactive_desc, (vop_t *) dead_inactive },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_create_desc, (vop_t *) dead_badop },
+ { &vop_fsync_desc, (vop_t *) nullop },
+ { &vop_getattr_desc, (vop_t *) dead_ebadf },
+ { &vop_inactive_desc, (vop_t *) nullop },
{ &vop_ioctl_desc, (vop_t *) dead_ioctl },
- { &vop_islocked_desc, (vop_t *) dead_islocked },
- { &vop_link_desc, (vop_t *) dead_link },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_link_desc, (vop_t *) dead_badop },
{ &vop_lock_desc, (vop_t *) dead_lock },
{ &vop_lookup_desc, (vop_t *) dead_lookup },
- { &vop_mkdir_desc, (vop_t *) dead_mkdir },
- { &vop_mknod_desc, (vop_t *) dead_mknod },
- { &vop_mmap_desc, (vop_t *) dead_mmap },
+ { &vop_mkdir_desc, (vop_t *) dead_badop },
+ { &vop_mknod_desc, (vop_t *) dead_badop },
+ { &vop_mmap_desc, (vop_t *) dead_badop },
{ &vop_open_desc, (vop_t *) dead_open },
- { &vop_pathconf_desc, (vop_t *) dead_pathconf },
- { &vop_poll_desc, (vop_t *) dead_poll },
+ { &vop_pathconf_desc, (vop_t *) dead_ebadf },
{ &vop_print_desc, (vop_t *) dead_print },
{ &vop_read_desc, (vop_t *) dead_read },
- { &vop_readdir_desc, (vop_t *) dead_readdir },
- { &vop_readlink_desc, (vop_t *) dead_readlink },
- { &vop_reclaim_desc, (vop_t *) dead_reclaim },
- { &vop_remove_desc, (vop_t *) dead_remove },
- { &vop_rename_desc, (vop_t *) dead_rename },
- { &vop_rmdir_desc, (vop_t *) dead_rmdir },
- { &vop_seek_desc, (vop_t *) dead_seek },
- { &vop_setattr_desc, (vop_t *) dead_setattr },
- { &vop_strategy_desc, (vop_t *) dead_strategy },
- { &vop_symlink_desc, (vop_t *) dead_symlink },
- { &vop_truncate_desc, (vop_t *) dead_truncate },
- { &vop_unlock_desc, (vop_t *) dead_unlock },
- { &vop_update_desc, (vop_t *) dead_update },
- { &vop_valloc_desc, (vop_t *) dead_valloc },
- { &vop_vfree_desc, (vop_t *) dead_vfree },
+ { &vop_readdir_desc, (vop_t *) dead_ebadf },
+ { &vop_readlink_desc, (vop_t *) dead_ebadf },
+ { &vop_reclaim_desc, (vop_t *) nullop },
+ { &vop_remove_desc, (vop_t *) dead_badop },
+ { &vop_rename_desc, (vop_t *) dead_badop },
+ { &vop_rmdir_desc, (vop_t *) dead_badop },
+ { &vop_seek_desc, (vop_t *) nullop },
+ { &vop_setattr_desc, (vop_t *) dead_ebadf },
+ { &vop_symlink_desc, (vop_t *) dead_badop },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
+ { &vop_update_desc, (vop_t *) nullop },
{ &vop_write_desc, (vop_t *) dead_write },
{ NULL, NULL }
};
@@ -244,23 +204,6 @@ dead_ioctl(ap)
return (VCALL(ap->a_vp, VOFFSET(vop_ioctl), ap));
}
-/*
- * Just call the device strategy routine
- */
-static int
-dead_strategy(ap)
- struct vop_strategy_args /* {
- struct buf *a_bp;
- } */ *ap;
-{
-
- if (ap->a_bp->b_vp == NULL || !chkvnlock(ap->a_bp->b_vp)) {
- ap->a_bp->b_flags |= B_ERROR;
- biodone(ap->a_bp);
- return (EIO);
- }
- return (VOP_STRATEGY(ap->a_bp));
-}
/*
* Wait until the vnode has finished changing state.
diff --git a/sys/miscfs/devfs/devfs_vnops.c b/sys/miscfs/devfs/devfs_vnops.c
index a97b5a9..5ab722c 100644
--- a/sys/miscfs/devfs/devfs_vnops.c
+++ b/sys/miscfs/devfs/devfs_vnops.c
@@ -1,7 +1,7 @@
/*
* Written by Julian Elischer (julian@DIALix.oz.au)
*
- * $Header: /home/ncvs/src/sys/miscfs/devfs/devfs_vnops.c,v 1.42 1997/10/15 10:04:08 phk Exp $
+ * $Header: /home/ncvs/src/sys/miscfs/devfs/devfs_vnops.c,v 1.43 1997/10/15 13:23:01 phk Exp $
*
* symlinks can wait 'til later.
*/
@@ -1488,20 +1488,6 @@ DBPRINT(("bmap\n"));
}
static int
-devfs_strategy(struct vop_strategy_args *ap)
- /*struct vop_strategy_args {
- struct buf *a_bp;
- } */
-{
-DBPRINT(("strategy\n"));
-
- if (ap->a_bp->b_vp->v_type == VBLK || ap->a_bp->b_vp->v_type == VCHR)
- printf("devfs_strategy: spec");
- return 0;
-}
-
-
-static int
devfs_advlock(struct vop_advlock_args *ap)
/*struct vop_advlock_args {
struct vnode *a_vp;
@@ -1590,18 +1576,6 @@ devfs_print(struct vop_print_args *ap)
return (0);
}
-static int
-devfs_vfree(struct vop_vfree_args *ap)
- /*struct vop_vfree_args {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */
-{
-
- return (0);
-}
-
/**************************************************************************\
* pseudo ops *
\**************************************************************************/
@@ -1650,68 +1624,24 @@ devfs_dropvnode(dn_p dnp)
dnp->vn = NULL; /* be pedantic about this */
}
-#define devfs_create ((int (*) __P((struct vop_create_args *)))devfs_enotsupp)
-#define devfs_mknod ((int (*) __P((struct vop_mknod_args *)))devfs_enotsupp)
-#define devfs_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define devfs_ioctl ((int (*) __P((struct vop_ioctl_args *)))devfs_enotsupp)
-#define devfs_poll vop_nopoll
-#define devfs_mmap ((int (*) __P((struct vop_mmap_args *)))devfs_enotsupp)
-#define devfs_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define devfs_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define devfs_mkdir ((int (*) __P((struct vop_mkdir_args *)))devfs_enotsupp)
-#define devfs_rmdir ((int (*) __P((struct vop_rmdir_args *)))devfs_enotsupp)
-/*
-#define devfs_symlink ((int (*) __P((struct vop_symlink_args *)))devfs_enotsupp)
-#define devfs_readlink \
- ((int (*) __P((struct vop_readlink_args *)))devfs_enotsupp)
-*/
-#define devfs_abortop ((int (*) __P((struct vop_abortop_args *)))nullop)
-#define devfs_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define devfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define devfs_bmap ((int (*) __P((struct vop_bmap_args *)))devfs_badop)
-#define devfs_strategy ((int (*) __P((struct vop_strategy_args *)))devfs_badop)
-#define devfs_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define devfs_advlock ((int (*) __P((struct vop_advlock_args *)))devfs_enotsupp)
-#define devfs_blkatoff \
- ((int (*) __P((struct vop_blkatoff_args *)))devfs_enotsupp)
-#define devfs_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) devfs_enotsupp)
-#define devfs_truncate \
- ((int (*) __P((struct vop_truncate_args *)))devfs_enotsupp)
-#define devfs_update ((int (*) __P((struct vop_update_args *)))devfs_enotsupp)
-#define devfs_bwrite ((int (*) __P((struct vop_bwrite_args *)))devfs_enotsupp)
-
/* These are the operations used by directories etc in a devfs */
vop_t **devfs_vnodeop_p;
static struct vnodeopv_entry_desc devfs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) devfs_abortop },
+ { &vop_abortop_desc, (vop_t *) nullop },
{ &vop_access_desc, (vop_t *) devfs_access },
- { &vop_advlock_desc, (vop_t *) devfs_advlock },
- { &vop_blkatoff_desc, (vop_t *) devfs_blkatoff },
- { &vop_bmap_desc, (vop_t *) devfs_bmap },
- { &vop_bwrite_desc, (vop_t *) devfs_bwrite },
- { &vop_close_desc, (vop_t *) devfs_close },
- { &vop_create_desc, (vop_t *) devfs_create },
- { &vop_fsync_desc, (vop_t *) devfs_fsync },
+ { &vop_bmap_desc, (vop_t *) devfs_badop },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) devfs_getattr },
{ &vop_inactive_desc, (vop_t *) devfs_inactive },
- { &vop_ioctl_desc, (vop_t *) devfs_ioctl },
- { &vop_islocked_desc, (vop_t *) devfs_islocked },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
{ &vop_link_desc, (vop_t *) devfs_link },
- { &vop_lock_desc, (vop_t *) devfs_lock },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) devfs_lookup },
- { &vop_mkdir_desc, (vop_t *) devfs_mkdir },
- { &vop_mknod_desc, (vop_t *) devfs_mknod },
- { &vop_mmap_desc, (vop_t *) devfs_mmap },
{ &vop_open_desc, (vop_t *) devfs_open },
{ &vop_pathconf_desc, (vop_t *) devfs_pathconf },
- { &vop_poll_desc, (vop_t *) devfs_poll },
{ &vop_print_desc, (vop_t *) devfs_print },
{ &vop_read_desc, (vop_t *) devfs_read },
{ &vop_readdir_desc, (vop_t *) devfs_readdir },
@@ -1719,16 +1649,10 @@ static struct vnodeopv_entry_desc devfs_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) devfs_reclaim },
{ &vop_remove_desc, (vop_t *) devfs_remove },
{ &vop_rename_desc, (vop_t *) devfs_rename },
- { &vop_rmdir_desc, (vop_t *) devfs_rmdir },
- { &vop_seek_desc, (vop_t *) devfs_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) devfs_setattr },
- { &vop_strategy_desc, (vop_t *) devfs_strategy },
{ &vop_symlink_desc, (vop_t *) devfs_symlink },
- { &vop_truncate_desc, (vop_t *) devfs_truncate },
- { &vop_unlock_desc, (vop_t *) devfs_unlock },
- { &vop_update_desc, (vop_t *) devfs_update },
- { &vop_valloc_desc, (vop_t *) devfs_valloc },
- { &vop_vfree_desc, (vop_t *) devfs_vfree },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) devfs_write },
{ NULL, NULL }
};
@@ -1781,7 +1705,6 @@ vop_t **dev_spec_vnodeop_p;
static struct vnodeopv_entry_desc dev_spec_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) spec_vnoperate },
{ &vop_access_desc, (vop_t *) devfs_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_getattr_desc, (vop_t *) devfs_getattr },
{ &vop_read_desc, (vop_t *) devfs_read },
{ &vop_reclaim_desc, (vop_t *) devfs_reclaim },
diff --git a/sys/miscfs/fdesc/fdesc_vnops.c b/sys/miscfs/fdesc/fdesc_vnops.c
index c3ac29b..7793177 100644
--- a/sys/miscfs/fdesc/fdesc_vnops.c
+++ b/sys/miscfs/fdesc/fdesc_vnops.c
@@ -35,7 +35,7 @@
*
* @(#)fdesc_vnops.c 8.9 (Berkeley) 1/21/94
*
- * $Id: fdesc_vnops.c,v 1.27 1997/10/15 09:20:57 phk Exp $
+ * $Id: fdesc_vnops.c,v 1.28 1997/10/15 10:04:12 phk Exp $
*/
/*
@@ -99,7 +99,6 @@ static int fdesc_readlink __P((struct vop_readlink_args *ap));
static int fdesc_reclaim __P((struct vop_reclaim_args *ap));
static int fdesc_poll __P((struct vop_poll_args *ap));
static int fdesc_setattr __P((struct vop_setattr_args *ap));
-static int fdesc_vfree __P((struct vop_vfree_args *ap));
static int fdesc_write __P((struct vop_write_args *ap));
/*
@@ -883,19 +882,6 @@ fdesc_print(ap)
return (0);
}
-/*void*/
-static int
-fdesc_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
-{
-
- return (0);
-}
-
/*
* /dev/fd "should never get here" operation
*/
@@ -907,61 +893,18 @@ fdesc_badop()
/* NOTREACHED */
}
-#define fdesc_create ((int (*) __P((struct vop_create_args *)))eopnotsupp)
-#define fdesc_mknod ((int (*) __P((struct vop_mknod_args *)))eopnotsupp)
-#define fdesc_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define fdesc_access ((int (*) __P((struct vop_access_args *)))nullop)
-#define fdesc_mmap ((int (*) __P((struct vop_mmap_args *)))eopnotsupp)
-#define fdesc_revoke vop_revoke
-#define fdesc_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define fdesc_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define fdesc_remove ((int (*) __P((struct vop_remove_args *)))eopnotsupp)
-#define fdesc_link ((int (*) __P((struct vop_link_args *)))eopnotsupp)
-#define fdesc_rename ((int (*) __P((struct vop_rename_args *)))eopnotsupp)
-#define fdesc_mkdir ((int (*) __P((struct vop_mkdir_args *)))eopnotsupp)
-#define fdesc_rmdir ((int (*) __P((struct vop_rmdir_args *)))eopnotsupp)
-#define fdesc_symlink ((int (*) __P((struct vop_symlink_args *)))eopnotsupp)
-#define fdesc_abortop ((int (*) __P((struct vop_abortop_args *)))nullop)
-#define fdesc_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define fdesc_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define fdesc_bmap ((int (*) __P((struct vop_bmap_args *)))fdesc_badop)
-#define fdesc_strategy ((int (*) __P((struct vop_strategy_args *)))fdesc_badop)
-#define fdesc_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define fdesc_advlock ((int (*) __P((struct vop_advlock_args *)))eopnotsupp)
-#define fdesc_blkatoff \
- ((int (*) __P((struct vop_blkatoff_args *)))eopnotsupp)
-#define fdesc_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) eopnotsupp)
-#define fdesc_truncate \
- ((int (*) __P((struct vop_truncate_args *)))eopnotsupp)
-#define fdesc_update ((int (*) __P((struct vop_update_args *)))eopnotsupp)
-#define fdesc_bwrite ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp)
-
static struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) fdesc_abortop },
- { &vop_access_desc, (vop_t *) fdesc_access },
- { &vop_advlock_desc, (vop_t *) fdesc_advlock },
- { &vop_blkatoff_desc, (vop_t *) fdesc_blkatoff },
- { &vop_bmap_desc, (vop_t *) fdesc_bmap },
- { &vop_bwrite_desc, (vop_t *) fdesc_bwrite },
- { &vop_close_desc, (vop_t *) fdesc_close },
- { &vop_create_desc, (vop_t *) fdesc_create },
- { &vop_fsync_desc, (vop_t *) fdesc_fsync },
+ { &vop_access_desc, (vop_t *) nullop },
+ { &vop_bmap_desc, (vop_t *) fdesc_badop },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) fdesc_getattr },
{ &vop_inactive_desc, (vop_t *) fdesc_inactive },
{ &vop_ioctl_desc, (vop_t *) fdesc_ioctl },
- { &vop_islocked_desc, (vop_t *) fdesc_islocked },
- { &vop_link_desc, (vop_t *) fdesc_link },
- { &vop_lock_desc, (vop_t *) fdesc_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) fdesc_lookup },
- { &vop_mkdir_desc, (vop_t *) fdesc_mkdir },
- { &vop_mknod_desc, (vop_t *) fdesc_mknod },
- { &vop_mmap_desc, (vop_t *) fdesc_mmap },
{ &vop_open_desc, (vop_t *) fdesc_open },
{ &vop_pathconf_desc, (vop_t *) fdesc_pathconf },
{ &vop_poll_desc, (vop_t *) fdesc_poll },
@@ -970,19 +913,9 @@ static struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = {
{ &vop_readdir_desc, (vop_t *) fdesc_readdir },
{ &vop_readlink_desc, (vop_t *) fdesc_readlink },
{ &vop_reclaim_desc, (vop_t *) fdesc_reclaim },
- { &vop_remove_desc, (vop_t *) fdesc_remove },
- { &vop_rename_desc, (vop_t *) fdesc_rename },
- { &vop_revoke_desc, (vop_t *) fdesc_revoke },
- { &vop_rmdir_desc, (vop_t *) fdesc_rmdir },
- { &vop_seek_desc, (vop_t *) fdesc_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) fdesc_setattr },
- { &vop_strategy_desc, (vop_t *) fdesc_strategy },
- { &vop_symlink_desc, (vop_t *) fdesc_symlink },
- { &vop_truncate_desc, (vop_t *) fdesc_truncate },
- { &vop_unlock_desc, (vop_t *) fdesc_unlock },
- { &vop_update_desc, (vop_t *) fdesc_update },
- { &vop_valloc_desc, (vop_t *) fdesc_valloc },
- { &vop_vfree_desc, (vop_t *) fdesc_vfree },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) fdesc_write },
{ NULL, NULL }
};
diff --git a/sys/miscfs/fifofs/fifo_vnops.c b/sys/miscfs/fifofs/fifo_vnops.c
index 7bddac3..0b157a54 100644
--- a/sys/miscfs/fifofs/fifo_vnops.c
+++ b/sys/miscfs/fifofs/fifo_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)fifo_vnops.c 8.10 (Berkeley) 5/27/95
- * $Id: fifo_vnops.c,v 1.30 1997/10/15 10:04:18 phk Exp $
+ * $Id: fifo_vnops.c,v 1.31 1997/10/15 13:23:12 phk Exp $
*/
#include <sys/param.h>
@@ -82,9 +82,7 @@ static struct vnodeopv_entry_desc fifo_vnodeop_entries[] = {
{ &vop_abortop_desc, (vop_t *) fifo_badop },
{ &vop_access_desc, (vop_t *) fifo_ebadf },
{ &vop_advlock_desc, (vop_t *) fifo_advlock },
- { &vop_blkatoff_desc, (vop_t *) fifo_badop },
{ &vop_bmap_desc, (vop_t *) fifo_bmap },
- { &vop_bwrite_desc, (vop_t *) nullop },
{ &vop_close_desc, (vop_t *) fifo_close },
{ &vop_create_desc, (vop_t *) fifo_badop },
{ &vop_fsync_desc, (vop_t *) nullop },
@@ -110,17 +108,12 @@ static struct vnodeopv_entry_desc fifo_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) nullop },
{ &vop_remove_desc, (vop_t *) fifo_badop },
{ &vop_rename_desc, (vop_t *) fifo_badop },
- { &vop_revoke_desc, (vop_t *) vop_revoke },
{ &vop_rmdir_desc, (vop_t *) fifo_badop },
{ &vop_seek_desc, (vop_t *) fifo_badop },
{ &vop_setattr_desc, (vop_t *) fifo_ebadf },
- { &vop_strategy_desc, (vop_t *) fifo_badop },
{ &vop_symlink_desc, (vop_t *) fifo_badop },
- { &vop_truncate_desc, (vop_t *) fifo_badop },
{ &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_update_desc, (vop_t *) nullop },
- { &vop_valloc_desc, (vop_t *) fifo_badop },
- { &vop_vfree_desc, (vop_t *) fifo_badop },
{ &vop_write_desc, (vop_t *) fifo_write },
{ NULL, NULL }
};
diff --git a/sys/miscfs/kernfs/kernfs_vnops.c b/sys/miscfs/kernfs/kernfs_vnops.c
index eff6ec1..3eea65c 100644
--- a/sys/miscfs/kernfs/kernfs_vnops.c
+++ b/sys/miscfs/kernfs/kernfs_vnops.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)kernfs_vnops.c 8.15 (Berkeley) 5/21/95
- * $Id: kernfs_vnops.c,v 1.22 1997/10/15 09:21:04 phk Exp $
+ * $Id: kernfs_vnops.c,v 1.23 1997/10/15 10:04:23 phk Exp $
*/
/*
@@ -116,7 +116,6 @@ static int kernfs_read __P((struct vop_read_args *ap));
static int kernfs_readdir __P((struct vop_readdir_args *ap));
static int kernfs_reclaim __P((struct vop_reclaim_args *ap));
static int kernfs_setattr __P((struct vop_setattr_args *ap));
-static int kernfs_vfree __P((struct vop_vfree_args *ap));
static int kernfs_write __P((struct vop_write_args *ap));
static int kernfs_xread __P((struct kern_target *kt, char *buf, int len,
int *lenp));
@@ -689,19 +688,6 @@ kernfs_print(ap)
return (0);
}
-/*void*/
-static int
-kernfs_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
-{
-
- return (0);
-}
-
/*
* Kernfs "should never get here" operation
*/
@@ -711,84 +697,28 @@ kernfs_badop()
return (EIO);
}
-#define kernfs_create ((int (*) __P((struct vop_create_args *)))eopnotsupp)
-#define kernfs_mknod ((int (*) __P((struct vop_mknod_args *)))eopnotsupp)
-#define kernfs_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define kernfs_ioctl ((int (*) __P((struct vop_ioctl_args *)))eopnotsupp)
-#define kernfs_poll vop_nopoll
-#define kernfs_revoke vop_revoke
-#define kernfs_mmap ((int (*) __P((struct vop_mmap_args *)))eopnotsupp)
-#define kernfs_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define kernfs_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define kernfs_remove ((int (*) __P((struct vop_remove_args *)))eopnotsupp)
-#define kernfs_link ((int (*) __P((struct vop_link_args *)))eopnotsupp)
-#define kernfs_rename ((int (*) __P((struct vop_rename_args *)))eopnotsupp)
-#define kernfs_mkdir ((int (*) __P((struct vop_mkdir_args *)))eopnotsupp)
-#define kernfs_rmdir ((int (*) __P((struct vop_rmdir_args *)))eopnotsupp)
-#define kernfs_symlink ((int (*) __P((struct vop_symlink_args *)))eopnotsupp)
-#define kernfs_readlink ((int (*) __P((struct vop_readlink_args *)))eopnotsupp)
-#define kernfs_abortop ((int (*) __P((struct vop_abortop_args *)))nullop)
-#define kernfs_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define kernfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define kernfs_bmap ((int (*) __P((struct vop_bmap_args *)))kernfs_badop)
-#define kernfs_strategy \
- ((int (*) __P((struct vop_strategy_args *)))kernfs_badop)
-#define kernfs_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define kernfs_advlock ((int (*) __P((struct vop_advlock_args *)))eopnotsupp)
-#define kernfs_blkatoff ((int (*) __P((struct vop_blkatoff_args *)))eopnotsupp)
-#define kernfs_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) eopnotsupp)
-#define kernfs_truncate ((int (*) __P((struct vop_truncate_args *)))eopnotsupp)
-#define kernfs_update ((int (*) __P((struct vop_update_args *)))eopnotsupp)
-#define kernfs_bwrite ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp)
vop_t **kernfs_vnodeop_p;
static struct vnodeopv_entry_desc kernfs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) kernfs_abortop },
{ &vop_access_desc, (vop_t *) kernfs_access },
- { &vop_advlock_desc, (vop_t *) kernfs_advlock },
- { &vop_blkatoff_desc, (vop_t *) kernfs_blkatoff },
- { &vop_bmap_desc, (vop_t *) kernfs_bmap },
- { &vop_bwrite_desc, (vop_t *) kernfs_bwrite },
- { &vop_close_desc, (vop_t *) kernfs_close },
- { &vop_create_desc, (vop_t *) kernfs_create },
- { &vop_fsync_desc, (vop_t *) kernfs_fsync },
+ { &vop_bmap_desc, (vop_t *) kernfs_badop },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) kernfs_getattr },
{ &vop_inactive_desc, (vop_t *) kernfs_inactive },
- { &vop_ioctl_desc, (vop_t *) kernfs_ioctl },
- { &vop_islocked_desc, (vop_t *) kernfs_islocked },
- { &vop_link_desc, (vop_t *) kernfs_link },
- { &vop_lock_desc, (vop_t *) kernfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) kernfs_lookup },
- { &vop_mkdir_desc, (vop_t *) kernfs_mkdir },
- { &vop_mknod_desc, (vop_t *) kernfs_mknod },
- { &vop_mmap_desc, (vop_t *) kernfs_mmap },
{ &vop_open_desc, (vop_t *) kernfs_open },
{ &vop_pathconf_desc, (vop_t *) kernfs_pathconf },
- { &vop_poll_desc, (vop_t *) kernfs_poll },
{ &vop_print_desc, (vop_t *) kernfs_print },
{ &vop_read_desc, (vop_t *) kernfs_read },
{ &vop_readdir_desc, (vop_t *) kernfs_readdir },
- { &vop_readlink_desc, (vop_t *) kernfs_readlink },
{ &vop_reclaim_desc, (vop_t *) kernfs_reclaim },
- { &vop_remove_desc, (vop_t *) kernfs_remove },
- { &vop_rename_desc, (vop_t *) kernfs_rename },
- { &vop_revoke_desc, (vop_t *) kernfs_revoke },
- { &vop_rmdir_desc, (vop_t *) kernfs_rmdir },
- { &vop_seek_desc, (vop_t *) kernfs_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) kernfs_setattr },
- { &vop_strategy_desc, (vop_t *) kernfs_strategy },
- { &vop_symlink_desc, (vop_t *) kernfs_symlink },
- { &vop_truncate_desc, (vop_t *) kernfs_truncate },
- { &vop_unlock_desc, (vop_t *) kernfs_unlock },
- { &vop_update_desc, (vop_t *) kernfs_update },
- { &vop_valloc_desc, (vop_t *) kernfs_valloc },
- { &vop_vfree_desc, (vop_t *) kernfs_vfree },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) kernfs_write },
{ NULL, NULL }
};
diff --git a/sys/miscfs/portal/portal_vnops.c b/sys/miscfs/portal/portal_vnops.c
index 231b385..d8c2230 100644
--- a/sys/miscfs/portal/portal_vnops.c
+++ b/sys/miscfs/portal/portal_vnops.c
@@ -35,7 +35,7 @@
*
* @(#)portal_vnops.c 8.14 (Berkeley) 5/21/95
*
- * $Id: portal_vnops.c,v 1.22 1997/10/15 09:21:11 phk Exp $
+ * $Id: portal_vnops.c,v 1.23 1997/10/15 10:04:34 phk Exp $
*/
/*
@@ -78,7 +78,6 @@ static int portal_print __P((struct vop_print_args *ap));
static int portal_readdir __P((struct vop_readdir_args *ap));
static int portal_reclaim __P((struct vop_reclaim_args *ap));
static int portal_setattr __P((struct vop_setattr_args *ap));
-static int portal_vfree __P((struct vop_vfree_args *ap));
static void
portal_closefd(p, fd)
@@ -612,19 +611,6 @@ portal_print(ap)
return (0);
}
-/*void*/
-static int
-portal_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
-{
-
- return (0);
-}
-
/*
* Portal vnode unsupported operation
@@ -647,94 +633,26 @@ portal_badop()
/* NOTREACHED */
}
-#define portal_create ((int (*) __P((struct vop_create_args *)))portal_enotsupp)
-#define portal_mknod ((int (*) __P((struct vop_mknod_args *)))portal_enotsupp)
-#define portal_close ((int (*) __P((struct vop_close_args *)))nullop)
-#define portal_access ((int (*) __P((struct vop_access_args *)))nullop)
-#define portal_read ((int (*) __P((struct vop_read_args *)))portal_enotsupp)
-#define portal_write ((int (*) __P((struct vop_write_args *)))portal_enotsupp)
-#define portal_ioctl ((int (*) __P((struct vop_ioctl_args *)))portal_enotsupp)
-#define portal_mmap ((int (*) __P((struct vop_mmap_args *)))portal_enotsupp)
-#define portal_poll vop_nopoll
-#define portal_revoke vop_revoke
-#define portal_fsync ((int (*) __P((struct vop_fsync_args *)))nullop)
-#define portal_seek ((int (*) __P((struct vop_seek_args *)))nullop)
-#define portal_remove ((int (*) __P((struct vop_remove_args *)))portal_enotsupp)
-#define portal_link ((int (*) __P((struct vop_link_args *)))portal_enotsupp)
-#define portal_rename ((int (*) __P((struct vop_rename_args *)))portal_enotsupp)
-#define portal_mkdir ((int (*) __P((struct vop_mkdir_args *)))portal_enotsupp)
-#define portal_rmdir ((int (*) __P((struct vop_rmdir_args *)))portal_enotsupp)
-#define portal_symlink \
- ((int (*) __P((struct vop_symlink_args *)))portal_enotsupp)
-#define portal_readlink \
- ((int (*) __P((struct vop_readlink_args *)))portal_enotsupp)
-#define portal_abortop ((int (*) __P((struct vop_abortop_args *)))nullop)
-#define portal_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define portal_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define portal_bmap ((int (*) __P((struct vop_bmap_args *)))portal_badop)
-#define portal_strategy \
- ((int (*) __P((struct vop_strategy_args *)))portal_badop)
-#define portal_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define fifo_islocked ((int(*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define portal_advlock \
- ((int (*) __P((struct vop_advlock_args *)))portal_enotsupp)
-#define portal_blkatoff \
- ((int (*) __P((struct vop_blkatoff_args *)))portal_enotsupp)
-#define portal_valloc ((int(*) __P(( \
- struct vnode *pvp, \
- int mode, \
- struct ucred *cred, \
- struct vnode **vpp))) portal_enotsupp)
-#define portal_truncate \
- ((int (*) __P((struct vop_truncate_args *)))portal_enotsupp)
-#define portal_update ((int (*) __P((struct vop_update_args *)))portal_enotsupp)
-#define portal_bwrite ((int (*) __P((struct vop_bwrite_args *)))portal_enotsupp)
-
vop_t **portal_vnodeop_p;
static struct vnodeopv_entry_desc portal_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) portal_abortop },
- { &vop_access_desc, (vop_t *) portal_access },
- { &vop_advlock_desc, (vop_t *) portal_advlock },
- { &vop_blkatoff_desc, (vop_t *) portal_blkatoff },
- { &vop_bmap_desc, (vop_t *) portal_bmap },
- { &vop_bwrite_desc, (vop_t *) portal_bwrite },
- { &vop_close_desc, (vop_t *) portal_close },
- { &vop_create_desc, (vop_t *) portal_create },
- { &vop_fsync_desc, (vop_t *) portal_fsync },
+ { &vop_access_desc, (vop_t *) nullop },
+ { &vop_bmap_desc, (vop_t *) portal_badop },
+ { &vop_close_desc, (vop_t *) nullop },
+ { &vop_fsync_desc, (vop_t *) nullop },
{ &vop_getattr_desc, (vop_t *) portal_getattr },
{ &vop_inactive_desc, (vop_t *) portal_inactive },
- { &vop_ioctl_desc, (vop_t *) portal_ioctl },
- { &vop_islocked_desc, (vop_t *) portal_islocked },
- { &vop_link_desc, (vop_t *) portal_link },
- { &vop_lock_desc, (vop_t *) portal_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) portal_lookup },
- { &vop_mkdir_desc, (vop_t *) portal_mkdir },
- { &vop_mknod_desc, (vop_t *) portal_mknod },
- { &vop_mmap_desc, (vop_t *) portal_mmap },
{ &vop_open_desc, (vop_t *) portal_open },
{ &vop_pathconf_desc, (vop_t *) portal_pathconf },
- { &vop_poll_desc, (vop_t *) portal_poll },
{ &vop_print_desc, (vop_t *) portal_print },
- { &vop_read_desc, (vop_t *) portal_read },
{ &vop_readdir_desc, (vop_t *) portal_readdir },
- { &vop_readlink_desc, (vop_t *) portal_readlink },
{ &vop_reclaim_desc, (vop_t *) portal_reclaim },
- { &vop_remove_desc, (vop_t *) portal_remove },
- { &vop_rename_desc, (vop_t *) portal_rename },
- { &vop_revoke_desc, (vop_t *) portal_revoke },
- { &vop_rmdir_desc, (vop_t *) portal_rmdir },
- { &vop_seek_desc, (vop_t *) portal_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) portal_setattr },
- { &vop_strategy_desc, (vop_t *) portal_strategy },
- { &vop_symlink_desc, (vop_t *) portal_symlink },
- { &vop_truncate_desc, (vop_t *) portal_truncate },
- { &vop_unlock_desc, (vop_t *) portal_unlock },
- { &vop_update_desc, (vop_t *) portal_update },
- { &vop_valloc_desc, (vop_t *) portal_valloc },
- { &vop_vfree_desc, (vop_t *) portal_vfree },
- { &vop_write_desc, (vop_t *) portal_write },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ NULL, NULL }
};
static struct vnodeopv_desc portal_vnodeop_opv_desc =
diff --git a/sys/miscfs/procfs/procfs_vnops.c b/sys/miscfs/procfs/procfs_vnops.c
index 443d89f..ab62a4d 100644
--- a/sys/miscfs/procfs/procfs_vnops.c
+++ b/sys/miscfs/procfs/procfs_vnops.c
@@ -36,7 +36,7 @@
*
* @(#)procfs_vnops.c 8.18 (Berkeley) 5/21/95
*
- * $Id: procfs_vnops.c,v 1.34 1997/10/15 09:21:19 phk Exp $
+ * $Id: procfs_vnops.c,v 1.35 1997/10/15 10:04:38 phk Exp $
*/
/*
@@ -936,33 +936,6 @@ atopid(b, len)
return (p);
}
-#define procfs_create ((int (*) __P((struct vop_create_args *))) procfs_badop)
-#define procfs_mknod ((int (*) __P((struct vop_mknod_args *))) procfs_badop)
-#define procfs_read procfs_rw
-#define procfs_write procfs_rw
-#define procfs_mmap ((int (*) __P((struct vop_mmap_args *))) procfs_badop)
-#define procfs_poll vop_nopoll
-#define procfs_revoke vop_revoke
-#define procfs_fsync ((int (*) __P((struct vop_fsync_args *))) procfs_badop)
-#define procfs_seek ((int (*) __P((struct vop_seek_args *))) procfs_badop)
-#define procfs_remove ((int (*) __P((struct vop_remove_args *))) procfs_badop)
-#define procfs_link ((int (*) __P((struct vop_link_args *))) procfs_badop)
-#define procfs_rename ((int (*) __P((struct vop_rename_args *))) procfs_badop)
-#define procfs_mkdir ((int (*) __P((struct vop_mkdir_args *))) procfs_badop)
-#define procfs_rmdir ((int (*) __P((struct vop_rmdir_args *))) procfs_badop)
-#define procfs_symlink ((int (*) __P((struct vop_symlink_args *))) procfs_badop)
-#define procfs_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define procfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define procfs_strategy ((int (*) __P((struct vop_strategy_args *))) procfs_badop)
-#define procfs_islocked \
- ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define procfs_advlock ((int (*) __P((struct vop_advlock_args *))) procfs_badop)
-#define procfs_blkatoff ((int (*) __P((struct vop_blkatoff_args *))) procfs_badop)
-#define procfs_valloc ((int (*) __P((struct vop_valloc_args *))) procfs_badop)
-#define procfs_vfree ((int (*) __P((struct vop_vfree_args *))) nullop)
-#define procfs_truncate ((int (*) __P((struct vop_truncate_args *))) procfs_badop)
-#define procfs_update ((int (*) __P((struct vop_update_args *))) nullop)
-
/*
* procfs vnode operations.
*/
@@ -971,44 +944,36 @@ static struct vnodeopv_entry_desc procfs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
{ &vop_abortop_desc, (vop_t *) procfs_abortop },
{ &vop_access_desc, (vop_t *) procfs_access },
- { &vop_advlock_desc, (vop_t *) procfs_advlock },
- { &vop_blkatoff_desc, (vop_t *) procfs_blkatoff },
+ { &vop_advlock_desc, (vop_t *) procfs_badop },
{ &vop_bmap_desc, (vop_t *) procfs_bmap },
{ &vop_close_desc, (vop_t *) procfs_close },
- { &vop_create_desc, (vop_t *) procfs_create },
- { &vop_fsync_desc, (vop_t *) procfs_fsync },
+ { &vop_create_desc, (vop_t *) procfs_badop },
{ &vop_getattr_desc, (vop_t *) procfs_getattr },
{ &vop_inactive_desc, (vop_t *) procfs_inactive },
{ &vop_ioctl_desc, (vop_t *) procfs_ioctl },
- { &vop_islocked_desc, (vop_t *) procfs_islocked },
- { &vop_link_desc, (vop_t *) procfs_link },
- { &vop_lock_desc, (vop_t *) procfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_link_desc, (vop_t *) procfs_badop },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_lookup_desc, (vop_t *) procfs_lookup },
- { &vop_mkdir_desc, (vop_t *) procfs_mkdir },
- { &vop_mknod_desc, (vop_t *) procfs_mknod },
- { &vop_mmap_desc, (vop_t *) procfs_mmap },
+ { &vop_mkdir_desc, (vop_t *) procfs_badop },
+ { &vop_mknod_desc, (vop_t *) procfs_badop },
+ { &vop_mmap_desc, (vop_t *) procfs_badop },
{ &vop_open_desc, (vop_t *) procfs_open },
{ &vop_pathconf_desc, (vop_t *) procfs_pathconf },
- { &vop_poll_desc, (vop_t *) procfs_poll },
{ &vop_print_desc, (vop_t *) procfs_print },
- { &vop_read_desc, (vop_t *) procfs_read },
+ { &vop_read_desc, (vop_t *) procfs_rw },
{ &vop_readdir_desc, (vop_t *) procfs_readdir },
{ &vop_readlink_desc, (vop_t *) procfs_readlink },
{ &vop_reclaim_desc, (vop_t *) procfs_reclaim },
- { &vop_remove_desc, (vop_t *) procfs_remove },
- { &vop_rename_desc, (vop_t *) procfs_rename },
- { &vop_revoke_desc, (vop_t *) procfs_revoke },
- { &vop_rmdir_desc, (vop_t *) procfs_rmdir },
- { &vop_seek_desc, (vop_t *) procfs_seek },
+ { &vop_remove_desc, (vop_t *) procfs_badop },
+ { &vop_rename_desc, (vop_t *) procfs_badop },
+ { &vop_rmdir_desc, (vop_t *) procfs_badop },
+ { &vop_seek_desc, (vop_t *) procfs_badop },
{ &vop_setattr_desc, (vop_t *) procfs_setattr },
- { &vop_strategy_desc, (vop_t *) procfs_strategy },
- { &vop_symlink_desc, (vop_t *) procfs_symlink },
- { &vop_truncate_desc, (vop_t *) procfs_truncate },
- { &vop_unlock_desc, (vop_t *) procfs_unlock },
- { &vop_update_desc, (vop_t *) procfs_update },
- { &vop_valloc_desc, (vop_t *) procfs_valloc },
- { &vop_vfree_desc, (vop_t *) procfs_vfree },
- { &vop_write_desc, (vop_t *) procfs_write },
+ { &vop_symlink_desc, (vop_t *) procfs_badop },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
+ { &vop_update_desc, (vop_t *) nullop },
+ { &vop_write_desc, (vop_t *) procfs_rw },
{ NULL, NULL }
};
static struct vnodeopv_desc procfs_vnodeop_opv_desc =
diff --git a/sys/miscfs/specfs/spec_vnops.c b/sys/miscfs/specfs/spec_vnops.c
index 73361c2..12a9f29 100644
--- a/sys/miscfs/specfs/spec_vnops.c
+++ b/sys/miscfs/specfs/spec_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)spec_vnops.c 8.14 (Berkeley) 5/21/95
- * $Id: spec_vnops.c,v 1.45 1997/10/15 10:04:43 phk Exp $
+ * $Id: spec_vnops.c,v 1.46 1997/10/15 13:23:18 phk Exp $
*/
#include <sys/param.h>
@@ -81,12 +81,9 @@ struct vnode *speclisth[SPECHSZ];
vop_t **spec_vnodeop_p;
static struct vnodeopv_entry_desc spec_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) spec_badop },
{ &vop_access_desc, (vop_t *) spec_ebadf },
{ &vop_advlock_desc, (vop_t *) spec_advlock },
- { &vop_blkatoff_desc, (vop_t *) spec_badop },
{ &vop_bmap_desc, (vop_t *) spec_bmap },
- { &vop_bwrite_desc, (vop_t *) nullop },
{ &vop_close_desc, (vop_t *) spec_close },
{ &vop_create_desc, (vop_t *) spec_badop },
{ &vop_fsync_desc, (vop_t *) spec_fsync },
@@ -113,17 +110,13 @@ static struct vnodeopv_entry_desc spec_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) nullop },
{ &vop_remove_desc, (vop_t *) spec_badop },
{ &vop_rename_desc, (vop_t *) spec_badop },
- { &vop_revoke_desc, (vop_t *) vop_revoke },
{ &vop_rmdir_desc, (vop_t *) spec_badop },
{ &vop_seek_desc, (vop_t *) spec_badop },
{ &vop_setattr_desc, (vop_t *) spec_ebadf },
{ &vop_strategy_desc, (vop_t *) spec_strategy },
{ &vop_symlink_desc, (vop_t *) spec_badop },
- { &vop_truncate_desc, (vop_t *) nullop },
{ &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_update_desc, (vop_t *) nullop },
- { &vop_valloc_desc, (vop_t *) spec_badop },
- { &vop_vfree_desc, (vop_t *) spec_badop },
{ &vop_write_desc, (vop_t *) spec_write },
{ NULL, NULL }
};
@@ -480,7 +473,7 @@ spec_poll(ap)
dev = ap->a_vp->v_rdev;
return (*cdevsw[major(dev)]->d_poll)(dev, ap->a_events, ap->a_p);
default:
- return (vop_nopoll(ap));
+ return (vn_defaultop((struct vop_generic_args *)ap));
}
}
diff --git a/sys/msdosfs/msdosfs_vnops.c b/sys/msdosfs/msdosfs_vnops.c
index dfb416b..6871b10 100644
--- a/sys/msdosfs/msdosfs_vnops.c
+++ b/sys/msdosfs/msdosfs_vnops.c
@@ -1,4 +1,4 @@
-/* $Id: msdosfs_vnops.c,v 1.46 1997/10/15 09:21:39 phk Exp $ */
+/* $Id: msdosfs_vnops.c,v 1.47 1997/10/15 10:05:03 phk Exp $ */
/* $NetBSD: msdosfs_vnops.c,v 1.20 1994/08/21 18:44:13 ws Exp $ */
/*-
@@ -1992,7 +1992,6 @@ static struct vnodeopv_entry_desc msdosfs_vnodeop_entries[] = {
{ &vop_access_desc, (vop_t *) msdosfs_access },
{ &vop_advlock_desc, (vop_t *) msdosfs_advlock },
{ &vop_bmap_desc, (vop_t *) msdosfs_bmap },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_cachedlookup_desc, (vop_t *) msdosfs_lookup },
{ &vop_close_desc, (vop_t *) msdosfs_close },
{ &vop_create_desc, (vop_t *) msdosfs_create },
diff --git a/sys/nfs/nfs_vnops.c b/sys/nfs/nfs_vnops.c
index 6585607..53e65ea 100644
--- a/sys/nfs/nfs_vnops.c
+++ b/sys/nfs/nfs_vnops.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_vnops.c 8.16 (Berkeley) 5/27/95
- * $Id: nfs_vnops.c,v 1.65 1997/10/15 10:05:10 phk Exp $
+ * $Id: nfs_vnops.c,v 1.66 1997/10/15 13:23:35 phk Exp $
*/
@@ -148,10 +148,10 @@ static struct vnodeopv_entry_desc nfsv2_vnodeop_entries[] = {
{ &vop_getpages_desc, (vop_t *) nfs_getpages },
{ &vop_inactive_desc, (vop_t *) nfs_inactive },
{ &vop_ioctl_desc, (vop_t *) nfs_ioctl },
- { &vop_islocked_desc, (vop_t *) nfs_islocked },
- { &vop_lease_desc, (vop_t *) nfs_lease_check },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lease_desc, (vop_t *) nullop },
{ &vop_link_desc, (vop_t *) nfs_link },
- { &vop_lock_desc, (vop_t *) nfs_lock },
+ { &vop_lock_desc, (vop_t *) vop_sharedlock },
{ &vop_lookup_desc, (vop_t *) nfs_lookup },
{ &vop_mkdir_desc, (vop_t *) nfs_mkdir },
{ &vop_mknod_desc, (vop_t *) nfs_mknod },
@@ -166,13 +166,12 @@ static struct vnodeopv_entry_desc nfsv2_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) nfs_reclaim },
{ &vop_remove_desc, (vop_t *) nfs_remove },
{ &vop_rename_desc, (vop_t *) nfs_rename },
- { &vop_revoke_desc, (vop_t *) nfs_revoke },
{ &vop_rmdir_desc, (vop_t *) nfs_rmdir },
- { &vop_seek_desc, (vop_t *) nfs_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) nfs_setattr },
{ &vop_strategy_desc, (vop_t *) nfs_strategy },
{ &vop_symlink_desc, (vop_t *) nfs_symlink },
- { &vop_unlock_desc, (vop_t *) nfs_unlock },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) nfs_write },
{ NULL, NULL }
};
@@ -187,18 +186,17 @@ vop_t **spec_nfsv2nodeop_p;
static struct vnodeopv_entry_desc spec_nfsv2nodeop_entries[] = {
{ &vop_default_desc, (vop_t *) spec_vnoperate },
{ &vop_access_desc, (vop_t *) nfsspec_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_close_desc, (vop_t *) nfsspec_close },
{ &vop_fsync_desc, (vop_t *) nfs_fsync },
{ &vop_getattr_desc, (vop_t *) nfs_getattr },
{ &vop_inactive_desc, (vop_t *) nfs_inactive },
- { &vop_islocked_desc, (vop_t *) nfs_islocked },
- { &vop_lock_desc, (vop_t *) nfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_sharedlock },
{ &vop_print_desc, (vop_t *) nfs_print },
{ &vop_read_desc, (vop_t *) nfsspec_read },
{ &vop_reclaim_desc, (vop_t *) nfs_reclaim },
{ &vop_setattr_desc, (vop_t *) nfs_setattr },
- { &vop_unlock_desc, (vop_t *) nfs_unlock },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) nfsspec_write },
{ NULL, NULL }
};
@@ -210,18 +208,17 @@ vop_t **fifo_nfsv2nodeop_p;
static struct vnodeopv_entry_desc fifo_nfsv2nodeop_entries[] = {
{ &vop_default_desc, (vop_t *) fifo_vnoperate },
{ &vop_access_desc, (vop_t *) nfsspec_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_close_desc, (vop_t *) nfsfifo_close },
{ &vop_fsync_desc, (vop_t *) nfs_fsync },
{ &vop_getattr_desc, (vop_t *) nfs_getattr },
{ &vop_inactive_desc, (vop_t *) nfs_inactive },
- { &vop_islocked_desc, (vop_t *) nfs_islocked },
- { &vop_lock_desc, (vop_t *) nfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_sharedlock },
{ &vop_print_desc, (vop_t *) nfs_print },
{ &vop_read_desc, (vop_t *) nfsfifo_read },
{ &vop_reclaim_desc, (vop_t *) nfs_reclaim },
{ &vop_setattr_desc, (vop_t *) nfs_setattr },
- { &vop_unlock_desc, (vop_t *) nfs_unlock },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) nfsfifo_write },
{ NULL, NULL }
};
diff --git a/sys/nfs/nfsnode.h b/sys/nfs/nfsnode.h
index 38686ff..880b356 100644
--- a/sys/nfs/nfsnode.h
+++ b/sys/nfs/nfsnode.h
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfsnode.h 8.9 (Berkeley) 5/14/95
- * $Id: nfsnode.h,v 1.21 1997/05/19 14:36:51 dfr Exp $
+ * $Id: nfsnode.h,v 1.22 1997/10/15 07:42:34 phk Exp $
*/
@@ -163,16 +163,10 @@ extern vop_t **spec_nfsv2nodeop_p;
*/
int nfs_getpages __P((struct vop_getpages_args *));
int nfs_write __P((struct vop_write_args *));
-#define nfs_lease_check ((int (*) __P((struct vop_lease_args *)))nullop)
int nqnfs_vop_lease_check __P((struct vop_lease_args *));
-#define nfs_revoke vop_revoke
-#define nfs_seek ((int (*) __P((struct vop_seek_args *)))nullop)
int nfs_abortop __P((struct vop_abortop_args *));
int nfs_inactive __P((struct vop_inactive_args *));
int nfs_reclaim __P((struct vop_reclaim_args *));
-#define nfs_lock ((int (*) __P((struct vop_lock_args *)))vop_sharedlock)
-#define nfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define nfs_islocked ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
/* other stuff */
int nfs_removeit __P((struct sillyrename *));
diff --git a/sys/nfsclient/nfs_vnops.c b/sys/nfsclient/nfs_vnops.c
index 6585607..53e65ea 100644
--- a/sys/nfsclient/nfs_vnops.c
+++ b/sys/nfsclient/nfs_vnops.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_vnops.c 8.16 (Berkeley) 5/27/95
- * $Id: nfs_vnops.c,v 1.65 1997/10/15 10:05:10 phk Exp $
+ * $Id: nfs_vnops.c,v 1.66 1997/10/15 13:23:35 phk Exp $
*/
@@ -148,10 +148,10 @@ static struct vnodeopv_entry_desc nfsv2_vnodeop_entries[] = {
{ &vop_getpages_desc, (vop_t *) nfs_getpages },
{ &vop_inactive_desc, (vop_t *) nfs_inactive },
{ &vop_ioctl_desc, (vop_t *) nfs_ioctl },
- { &vop_islocked_desc, (vop_t *) nfs_islocked },
- { &vop_lease_desc, (vop_t *) nfs_lease_check },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lease_desc, (vop_t *) nullop },
{ &vop_link_desc, (vop_t *) nfs_link },
- { &vop_lock_desc, (vop_t *) nfs_lock },
+ { &vop_lock_desc, (vop_t *) vop_sharedlock },
{ &vop_lookup_desc, (vop_t *) nfs_lookup },
{ &vop_mkdir_desc, (vop_t *) nfs_mkdir },
{ &vop_mknod_desc, (vop_t *) nfs_mknod },
@@ -166,13 +166,12 @@ static struct vnodeopv_entry_desc nfsv2_vnodeop_entries[] = {
{ &vop_reclaim_desc, (vop_t *) nfs_reclaim },
{ &vop_remove_desc, (vop_t *) nfs_remove },
{ &vop_rename_desc, (vop_t *) nfs_rename },
- { &vop_revoke_desc, (vop_t *) nfs_revoke },
{ &vop_rmdir_desc, (vop_t *) nfs_rmdir },
- { &vop_seek_desc, (vop_t *) nfs_seek },
+ { &vop_seek_desc, (vop_t *) nullop },
{ &vop_setattr_desc, (vop_t *) nfs_setattr },
{ &vop_strategy_desc, (vop_t *) nfs_strategy },
{ &vop_symlink_desc, (vop_t *) nfs_symlink },
- { &vop_unlock_desc, (vop_t *) nfs_unlock },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) nfs_write },
{ NULL, NULL }
};
@@ -187,18 +186,17 @@ vop_t **spec_nfsv2nodeop_p;
static struct vnodeopv_entry_desc spec_nfsv2nodeop_entries[] = {
{ &vop_default_desc, (vop_t *) spec_vnoperate },
{ &vop_access_desc, (vop_t *) nfsspec_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_close_desc, (vop_t *) nfsspec_close },
{ &vop_fsync_desc, (vop_t *) nfs_fsync },
{ &vop_getattr_desc, (vop_t *) nfs_getattr },
{ &vop_inactive_desc, (vop_t *) nfs_inactive },
- { &vop_islocked_desc, (vop_t *) nfs_islocked },
- { &vop_lock_desc, (vop_t *) nfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_sharedlock },
{ &vop_print_desc, (vop_t *) nfs_print },
{ &vop_read_desc, (vop_t *) nfsspec_read },
{ &vop_reclaim_desc, (vop_t *) nfs_reclaim },
{ &vop_setattr_desc, (vop_t *) nfs_setattr },
- { &vop_unlock_desc, (vop_t *) nfs_unlock },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) nfsspec_write },
{ NULL, NULL }
};
@@ -210,18 +208,17 @@ vop_t **fifo_nfsv2nodeop_p;
static struct vnodeopv_entry_desc fifo_nfsv2nodeop_entries[] = {
{ &vop_default_desc, (vop_t *) fifo_vnoperate },
{ &vop_access_desc, (vop_t *) nfsspec_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_close_desc, (vop_t *) nfsfifo_close },
{ &vop_fsync_desc, (vop_t *) nfs_fsync },
{ &vop_getattr_desc, (vop_t *) nfs_getattr },
{ &vop_inactive_desc, (vop_t *) nfs_inactive },
- { &vop_islocked_desc, (vop_t *) nfs_islocked },
- { &vop_lock_desc, (vop_t *) nfs_lock },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_sharedlock },
{ &vop_print_desc, (vop_t *) nfs_print },
{ &vop_read_desc, (vop_t *) nfsfifo_read },
{ &vop_reclaim_desc, (vop_t *) nfs_reclaim },
{ &vop_setattr_desc, (vop_t *) nfs_setattr },
- { &vop_unlock_desc, (vop_t *) nfs_unlock },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ &vop_write_desc, (vop_t *) nfsfifo_write },
{ NULL, NULL }
};
diff --git a/sys/nfsclient/nfsnode.h b/sys/nfsclient/nfsnode.h
index 38686ff..880b356 100644
--- a/sys/nfsclient/nfsnode.h
+++ b/sys/nfsclient/nfsnode.h
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfsnode.h 8.9 (Berkeley) 5/14/95
- * $Id: nfsnode.h,v 1.21 1997/05/19 14:36:51 dfr Exp $
+ * $Id: nfsnode.h,v 1.22 1997/10/15 07:42:34 phk Exp $
*/
@@ -163,16 +163,10 @@ extern vop_t **spec_nfsv2nodeop_p;
*/
int nfs_getpages __P((struct vop_getpages_args *));
int nfs_write __P((struct vop_write_args *));
-#define nfs_lease_check ((int (*) __P((struct vop_lease_args *)))nullop)
int nqnfs_vop_lease_check __P((struct vop_lease_args *));
-#define nfs_revoke vop_revoke
-#define nfs_seek ((int (*) __P((struct vop_seek_args *)))nullop)
int nfs_abortop __P((struct vop_abortop_args *));
int nfs_inactive __P((struct vop_inactive_args *));
int nfs_reclaim __P((struct vop_reclaim_args *));
-#define nfs_lock ((int (*) __P((struct vop_lock_args *)))vop_sharedlock)
-#define nfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define nfs_islocked ((int (*) __P((struct vop_islocked_args *)))vop_noislocked)
/* other stuff */
int nfs_removeit __P((struct sillyrename *));
diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h
index 9997769..009d827 100644
--- a/sys/sys/vnode.h
+++ b/sys/sys/vnode.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)vnode.h 8.7 (Berkeley) 2/4/94
- * $Id: vnode.h,v 1.49 1997/09/21 04:24:09 dyson Exp $
+ * $Id: vnode.h,v 1.50 1997/10/12 20:26:07 phk Exp $
*/
#ifndef _SYS_VNODE_H_
@@ -373,11 +373,6 @@ struct vnodeopv_desc {
};
/*
- * A default routine which just returns an error.
- */
-int vn_default_error __P((void));
-
-/*
* A generic structure.
* This can be used by bypass routines to identify generic arguments.
*/
@@ -386,6 +381,14 @@ struct vop_generic_args {
/* other random data follows, presumably */
};
+/*
+ * A default routine for vnops we shouldn't hit
+ */
+int vn_defaultop __P((struct vop_generic_args *ap));
+
+/* XXX: compat until fixed all places*/
+#define vn_default_error vn_defaultop
+
#ifdef DEBUG_VFS_LOCKS
/*
* Macros to aid in tracing VFS locking problems. Not totally
diff --git a/sys/ufs/ffs/ffs_alloc.c b/sys/ufs/ffs/ffs_alloc.c
index 425bf64..85ef1b6 100644
--- a/sys/ufs/ffs/ffs_alloc.c
+++ b/sys/ufs/ffs/ffs_alloc.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_alloc.c 8.18 (Berkeley) 5/26/95
- * $Id: ffs_alloc.c,v 1.38 1997/10/14 14:22:23 phk Exp $
+ * $Id: ffs_alloc.c,v 1.39 1997/10/14 18:46:41 phk Exp $
*/
#include "opt_quota.h"
@@ -48,6 +48,7 @@
#include <ufs/ufs/quota.h>
#include <ufs/ufs/inode.h>
+#include <ufs/ufs/ufsmount.h>
#include <ufs/ffs/fs.h>
#include <ufs/ffs/ffs_extern.h>
@@ -545,23 +546,19 @@ fail:
* available inode is located.
*/
int
-ffs_valloc(ap)
- struct vop_valloc_args /* {
- struct vnode *a_pvp;
- int a_mode;
- struct ucred *a_cred;
- struct vnode **a_vpp;
- } */ *ap;
+ffs_valloc(pvp, mode, cred, vpp)
+ struct vnode *pvp;
+ int mode;
+ struct ucred *cred;
+ struct vnode **vpp;
{
- register struct vnode *pvp = ap->a_pvp;
register struct inode *pip;
register struct fs *fs;
register struct inode *ip;
- mode_t mode = ap->a_mode;
ino_t ino, ipref;
int cg, error;
- *ap->a_vpp = NULL;
+ *vpp = NULL;
pip = VTOI(pvp);
fs = pip->i_fs;
if (fs->fs_cstotal.cs_nifree == 0)
@@ -578,12 +575,12 @@ ffs_valloc(ap)
(allocfcn_t *)ffs_nodealloccg);
if (ino == 0)
goto noinodes;
- error = VFS_VGET(pvp->v_mount, ino, ap->a_vpp);
+ error = VFS_VGET(pvp->v_mount, ino, vpp);
if (error) {
- VOP_VFREE(pvp, ino, mode);
+ UFS_VFREE(pvp, ino, mode);
return (error);
}
- ip = VTOI(*ap->a_vpp);
+ ip = VTOI(*vpp);
if (ip->i_mode) {
printf("mode = 0%o, inum = %ld, fs = %s\n",
ip->i_mode, ip->i_number, fs->fs_fsmnt);
@@ -602,7 +599,7 @@ ffs_valloc(ap)
ip->i_gen = random() / 2 + 1;
return (0);
noinodes:
- ffs_fserr(fs, ap->a_cred->cr_uid, "out of inodes");
+ ffs_fserr(fs, cred->cr_uid, "out of inodes");
uprintf("\n%s: create/symlink failed, no inodes free\n", fs->fs_fsmnt);
return (ENOSPC);
}
@@ -1404,21 +1401,18 @@ ffs_checkblk(ip, bno, size)
* The specified inode is placed back in the free map.
*/
int
-ffs_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
+ffs_vfree(pvp, ino, mode)
+ struct vnode *pvp;
+ ino_t ino;
+ int mode;
{
register struct fs *fs;
register struct cg *cgp;
register struct inode *pip;
- ino_t ino = ap->a_ino;
struct buf *bp;
int error, cg;
- pip = VTOI(ap->a_pvp);
+ pip = VTOI(pvp);
fs = pip->i_fs;
if ((u_int)ino >= fs->fs_ipg * fs->fs_ncg)
panic("ffs_vfree: range: dev = 0x%x, ino = %d, fs = %s",
@@ -1449,7 +1443,7 @@ ffs_vfree(ap)
cgp->cg_cs.cs_nifree++;
fs->fs_cstotal.cs_nifree++;
fs->fs_cs(fs, cg).cs_nifree++;
- if ((ap->a_mode & IFMT) == IFDIR) {
+ if ((mode & IFMT) == IFDIR) {
cgp->cg_cs.cs_ndir--;
fs->fs_cstotal.cs_ndir--;
fs->fs_cs(fs, cg).cs_ndir--;
diff --git a/sys/ufs/ffs/ffs_extern.h b/sys/ufs/ffs/ffs_extern.h
index 7cc5251..4aa6118 100644
--- a/sys/ufs/ffs/ffs_extern.h
+++ b/sys/ufs/ffs/ffs_extern.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_extern.h 8.6 (Berkeley) 3/30/95
- * $Id: ffs_extern.h,v 1.17 1997/09/27 13:40:05 kato Exp $
+ * $Id: ffs_extern.h,v 1.18 1997/10/10 18:16:58 phk Exp $
*/
#ifndef _UFS_FFS_EXTERN_H
@@ -65,7 +65,7 @@ int ffs_alloc __P((struct inode *,
ufs_daddr_t, ufs_daddr_t, int, struct ucred *, ufs_daddr_t *));
int ffs_balloc __P((struct inode *,
ufs_daddr_t, int, struct ucred *, struct buf **, int));
-int ffs_blkatoff __P((struct vop_blkatoff_args *));
+int ffs_blkatoff __P((struct vnode *, off_t, char **, struct buf **));
void ffs_blkfree __P((struct inode *, ufs_daddr_t, long));
ufs_daddr_t ffs_blkpref __P((struct inode *, ufs_daddr_t, int, ufs_daddr_t *));
int ffs_bmap __P((struct vop_bmap_args *));
@@ -84,11 +84,12 @@ int ffs_realloccg __P((struct inode *,
void ffs_setblock __P((struct fs *, u_char *, ufs_daddr_t));
int ffs_statfs __P((struct mount *, struct statfs *, struct proc *));
int ffs_sync __P((struct mount *, int, struct ucred *, struct proc *));
-int ffs_truncate __P((struct vop_truncate_args *));
+int ffs_truncate __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
int ffs_unmount __P((struct mount *, int, struct proc *));
int ffs_update __P((struct vop_update_args *));
-int ffs_valloc __P((struct vop_valloc_args *));
-int ffs_vfree __P((struct vop_vfree_args *));
+int ffs_valloc __P((struct vnode *, int, struct ucred *, struct vnode **));
+
+int ffs_vfree __P((struct vnode *, ino_t, int));
int ffs_vget __P((struct mount *, ino_t, struct vnode **));
int ffs_vptofh __P((struct vnode *, struct fid *));
diff --git a/sys/ufs/ffs/ffs_inode.c b/sys/ufs/ffs/ffs_inode.c
index 99dc77b..78cf65c 100644
--- a/sys/ufs/ffs/ffs_inode.c
+++ b/sys/ufs/ffs/ffs_inode.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_inode.c 8.13 (Berkeley) 4/21/95
- * $Id: ffs_inode.c,v 1.26 1997/03/22 06:53:29 bde Exp $
+ * $Id: ffs_inode.c,v 1.27 1997/09/02 20:06:44 bde Exp $
*/
#include "opt_quota.h"
@@ -149,21 +149,18 @@ ffs_update(ap)
* disk blocks.
*/
int
-ffs_truncate(ap)
- struct vop_truncate_args /* {
- struct vnode *a_vp;
- off_t a_length;
- int a_flags;
- struct ucred *a_cred;
- struct proc *a_p;
- } */ *ap;
+ffs_truncate(vp, length, flags, cred, p)
+ struct vnode *vp;
+ off_t length;
+ int flags;
+ struct ucred *cred;
+ struct proc *p;
{
- register struct vnode *ovp = ap->a_vp;
+ register struct vnode *ovp = vp;
ufs_daddr_t lastblock;
register struct inode *oip;
ufs_daddr_t bn, lbn, lastiblock[NIADDR], indir_lbn[NIADDR];
ufs_daddr_t oldblks[NDADDR + NIADDR], newblks[NDADDR + NIADDR];
- off_t length = ap->a_length;
register struct fs *fs;
struct buf *bp;
int offset, size, level;
@@ -210,9 +207,9 @@ ffs_truncate(ap)
offset = blkoff(fs, length - 1);
lbn = lblkno(fs, length - 1);
aflags = B_CLRBUF;
- if (ap->a_flags & IO_SYNC)
+ if (flags & IO_SYNC)
aflags |= B_SYNC;
- error = ffs_balloc(oip, lbn, offset + 1, ap->a_cred,
+ error = ffs_balloc(oip, lbn, offset + 1, cred,
&bp, aflags);
if (error)
return (error);
@@ -240,9 +237,9 @@ ffs_truncate(ap)
} else {
lbn = lblkno(fs, length);
aflags = B_CLRBUF;
- if (ap->a_flags & IO_SYNC)
+ if (flags & IO_SYNC)
aflags |= B_SYNC;
- error = ffs_balloc(oip, lbn, offset, ap->a_cred, &bp, aflags);
+ error = ffs_balloc(oip, lbn, offset, cred, &bp, aflags);
if (error)
return (error);
oip->i_size = length;
@@ -296,7 +293,7 @@ ffs_truncate(ap)
bcopy((caddr_t)oldblks, (caddr_t)&oip->i_db[0], sizeof oldblks);
oip->i_size = osize;
vflags = ((length > 0) ? V_SAVE : 0) | V_SAVEMETA;
- allerror = vinvalbuf(ovp, vflags, ap->a_cred, ap->a_p, 0, 0);
+ allerror = vinvalbuf(ovp, vflags, cred, p, 0, 0);
/*
* Indirect blocks first.
diff --git a/sys/ufs/ffs/ffs_subr.c b/sys/ufs/ffs/ffs_subr.c
index 1387b20..06d5b55 100644
--- a/sys/ufs/ffs/ffs_subr.c
+++ b/sys/ufs/ffs/ffs_subr.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_subr.c 8.5 (Berkeley) 3/21/95
- * $Id: ffs_subr.c,v 1.11 1997/02/22 09:47:04 peter Exp $
+ * $Id: ffs_subr.c,v 1.12 1997/03/09 06:00:42 mpp Exp $
*/
#include <sys/param.h>
@@ -57,13 +57,11 @@
* remaining space in the directory.
*/
int
-ffs_blkatoff(ap)
- struct vop_blkatoff_args /* {
- struct vnode *a_vp;
- off_t a_offset;
- char **a_res;
- struct buf **a_bpp;
- } */ *ap;
+ffs_blkatoff(vp, offset, res, bpp)
+ struct vnode *vp;
+ off_t offset;
+ char **res;
+ struct buf **bpp;
{
struct inode *ip;
register struct fs *fs;
@@ -71,20 +69,20 @@ ffs_blkatoff(ap)
ufs_daddr_t lbn;
int bsize, error;
- ip = VTOI(ap->a_vp);
+ ip = VTOI(vp);
fs = ip->i_fs;
- lbn = lblkno(fs, ap->a_offset);
+ lbn = lblkno(fs, offset);
bsize = blksize(fs, ip, lbn);
- *ap->a_bpp = NULL;
- error = bread(ap->a_vp, lbn, bsize, NOCRED, &bp);
+ *bpp = NULL;
+ error = bread(vp, lbn, bsize, NOCRED, &bp);
if (error) {
brelse(bp);
return (error);
}
- if (ap->a_res)
- *ap->a_res = (char *)bp->b_data + blkoff(fs, ap->a_offset);
- *ap->a_bpp = bp;
+ if (res)
+ *res = (char *)bp->b_data + blkoff(fs, offset);
+ *bpp = bp;
return (0);
}
#endif
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c
index 05ee306..c053477 100644
--- a/sys/ufs/ffs/ffs_vfsops.c
+++ b/sys/ufs/ffs/ffs_vfsops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_vfsops.c 8.31 (Berkeley) 5/20/95
- * $Id: ffs_vfsops.c,v 1.58 1997/10/11 18:31:36 phk Exp $
+ * $Id: ffs_vfsops.c,v 1.59 1997/10/12 20:26:12 phk Exp $
*/
#include "opt_quota.h"
@@ -555,6 +555,10 @@ ffs_mountfs(devvp, mp, p, malloctype)
ump->um_malloctype = malloctype;
ump->um_fs = malloc((u_long)fs->fs_sbsize, M_UFSMNT,
M_WAITOK);
+ ump->um_blkatoff = ffs_blkatoff;
+ ump->um_truncate = ffs_truncate;
+ ump->um_valloc = ffs_valloc;
+ ump->um_vfree = ffs_vfree;
bcopy(bp->b_data, ump->um_fs, (u_int)fs->fs_sbsize);
if (fs->fs_sbsize < SBSIZE)
bp->b_flags |= B_INVAL;
diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c
index d3b9085..254d5e5 100644
--- a/sys/ufs/ffs/ffs_vnops.c
+++ b/sys/ufs/ffs/ffs_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_vnops.c 8.15 (Berkeley) 5/14/95
- * $Id: ffs_vnops.c,v 1.33 1997/10/15 10:05:17 phk Exp $
+ * $Id: ffs_vnops.c,v 1.34 1997/10/15 13:23:47 phk Exp $
*/
#include <sys/param.h>
@@ -73,15 +73,11 @@ static int ffs_write __P((struct vop_write_args *));
vop_t **ffs_vnodeop_p;
static struct vnodeopv_entry_desc ffs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) ufs_vnoperate },
- { &vop_blkatoff_desc, (vop_t *) ffs_blkatoff },
{ &vop_fsync_desc, (vop_t *) ffs_fsync },
{ &vop_getpages_desc, (vop_t *) ffs_getpages },
{ &vop_read_desc, (vop_t *) ffs_read },
{ &vop_reallocblks_desc, (vop_t *) ffs_reallocblks },
- { &vop_truncate_desc, (vop_t *) ffs_truncate },
{ &vop_update_desc, (vop_t *) ffs_update },
- { &vop_valloc_desc, (vop_t *) ffs_valloc },
- { &vop_vfree_desc, (vop_t *) ffs_vfree },
{ &vop_write_desc, (vop_t *) ffs_write },
{ NULL, NULL }
};
@@ -93,7 +89,6 @@ static struct vnodeopv_entry_desc ffs_specop_entries[] = {
{ &vop_default_desc, (vop_t *) ufs_vnoperatespec },
{ &vop_fsync_desc, (vop_t *) ffs_fsync },
{ &vop_update_desc, (vop_t *) ffs_update },
- { &vop_vfree_desc, (vop_t *) ffs_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc ffs_specop_opv_desc =
@@ -104,7 +99,6 @@ static struct vnodeopv_entry_desc ffs_fifoop_entries[] = {
{ &vop_default_desc, (vop_t *) ufs_vnoperatefifo },
{ &vop_fsync_desc, (vop_t *) ffs_fsync },
{ &vop_update_desc, (vop_t *) ffs_update },
- { &vop_vfree_desc, (vop_t *) ffs_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc ffs_fifoop_opv_desc =
diff --git a/sys/ufs/lfs/lfs_alloc.c b/sys/ufs/lfs/lfs_alloc.c
index 797d0ba..a3f979d 100644
--- a/sys/ufs/lfs/lfs_alloc.c
+++ b/sys/ufs/lfs/lfs_alloc.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)lfs_alloc.c 8.7 (Berkeley) 5/14/95
- * $Id: lfs_alloc.c,v 1.16 1997/10/14 14:22:29 phk Exp $
+ * $Id: lfs_alloc.c,v 1.17 1997/10/14 18:46:43 phk Exp $
*/
#include "opt_quota.h"
@@ -60,13 +60,11 @@ extern u_long nextgennumber;
/* Allocate a new inode. */
/* ARGSUSED */
int
-lfs_valloc(ap)
- struct vop_valloc_args /* {
- struct vnode *a_pvp;
- int a_mode;
- struct ucred *a_cred;
- struct vnode **a_vpp;
- } */ *ap;
+lfs_valloc(pvp, mode, cred, vpp)
+ struct vnode *pvp;
+ int mode;
+ struct ucred *cred;
+ struct vnode **vpp;
{
struct lfs *fs;
struct buf *bp;
@@ -79,7 +77,7 @@ lfs_valloc(ap)
int error;
/* Get the head of the freelist. */
- fs = VTOI(ap->a_pvp)->i_lfs;
+ fs = VTOI(pvp)->i_lfs;
new_ino = fs->lfs_free;
#ifdef ALLOCPRINT
printf("lfs_ialloc: allocate inode %d\n", new_ino);
@@ -120,7 +118,7 @@ lfs_valloc(ap)
}
/* Create a vnode to associate with the inode. */
- if (error = lfs_vcreate(ap->a_pvp->v_mount, new_ino, &vp))
+ if (error = lfs_vcreate(pvp->v_mount, new_ino, &vp))
return (error);
@@ -139,11 +137,11 @@ lfs_valloc(ap)
if (error = ufs_vinit(vp->v_mount, lfs_specop_p, LFS_FIFOOPS, &vp)) {
vput(vp);
- *ap->a_vpp = NULL;
+ *vpp = NULL;
return (error);
}
- *ap->a_vpp = vp;
+ *vpp = vp;
vp->v_flag |= VDIROP;
VREF(ip->i_devvp);
@@ -206,12 +204,10 @@ lfs_vcreate(mp, ino, vpp)
/* Free an inode. */
/* ARGUSED */
int
-lfs_vfree(ap)
- struct vop_vfree_args /* {
- struct vnode *a_pvp;
- ino_t a_ino;
- int a_mode;
- } */ *ap;
+lfs_vfree(pvp, ino, mode)
+ struct vnode *pvp;
+ ino_t ino;
+ int mode;
{
SEGUSE *sup;
struct buf *bp;
@@ -222,7 +218,7 @@ lfs_vfree(ap)
ino_t ino;
/* Get the inode number and file system. */
- ip = VTOI(ap->a_pvp);
+ ip = VTOI(pvp);
fs = ip->i_lfs;
ino = ip->i_number;
if (ip->i_flag & IN_MODIFIED) {
diff --git a/sys/ufs/lfs/lfs_extern.h b/sys/ufs/lfs/lfs_extern.h
index acab203..030fedd 100644
--- a/sys/ufs/lfs/lfs_extern.h
+++ b/sys/ufs/lfs/lfs_extern.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)lfs_extern.h 8.6 (Berkeley) 5/8/95
- * $Id: lfs_extern.h,v 1.16 1997/10/10 18:17:20 phk Exp $
+ * $Id: lfs_extern.h,v 1.17 1997/10/12 20:26:15 phk Exp $
*/
#ifndef _UFS_LFS_LFS_EXTERN_H_
@@ -39,15 +39,17 @@
#ifdef KERNEL
+#ifdef MALLOC_DECLARE
MALLOC_DECLARE(M_LFSNODE);
MALLOC_DECLARE(M_SEGMENT); /* XXX should be M_LFSSEGMENT ?? */
+#endif
struct inode;
struct mount;
struct nameidata;
int lfs_balloc __P((struct vnode *, int, u_long, ufs_daddr_t, struct buf **));
-int lfs_blkatoff __P((struct vop_blkatoff_args *));
+int lfs_blkatoff __P((struct vnode *, off_t, char **, struct buf **));
int lfs_bwrite __P((struct vop_bwrite_args *));
int lfs_check __P((struct vnode *, ufs_daddr_t));
void lfs_free_buffer __P((caddr_t, int));
@@ -65,12 +67,12 @@ void lfs_segunlock __P((struct lfs *));
int lfs_segwrite __P((struct mount *, int));
#define lfs_sysctl ((int (*) __P((int *, u_int, void *, size_t *, void *, \
size_t, struct proc *)))eopnotsupp)
-int lfs_truncate __P((struct vop_truncate_args *));
+int lfs_truncate __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
int lfs_update __P((struct vop_update_args *));
void lfs_updatemeta __P((struct segment *));
-int lfs_valloc __P((struct vop_valloc_args *));
+int lfs_valloc __P((struct vnode *, int, struct ucred *, struct vnode **));
int lfs_vcreate __P((struct mount *, ino_t, struct vnode **));
-int lfs_vfree __P((struct vop_vfree_args *));
+int lfs_vfree __P((struct vnode *, ino_t, int));
int lfs_vflush __P((struct vnode *));
int lfs_vref __P((struct vnode *));
void lfs_vunref __P((struct vnode *));
diff --git a/sys/ufs/lfs/lfs_inode.c b/sys/ufs/lfs/lfs_inode.c
index 545c1df..6b03151 100644
--- a/sys/ufs/lfs/lfs_inode.c
+++ b/sys/ufs/lfs/lfs_inode.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)lfs_inode.c 8.9 (Berkeley) 5/8/95
- * $Id: lfs_inode.c,v 1.17 1997/03/22 09:33:55 bde Exp $
+ * $Id: lfs_inode.c,v 1.18 1997/09/02 20:06:48 bde Exp $
*/
#include "opt_quota.h"
@@ -154,20 +154,16 @@ lfs_update(ap)
*/
/* ARGSUSED */
int
-lfs_truncate(ap)
- struct vop_truncate_args /* {
- struct vnode *a_vp;
- off_t a_length;
- int a_flags;
- struct ucred *a_cred;
- struct proc *a_p;
- } */ *ap;
+lfs_truncate(vp, length, flags, cred, p)
+ struct vnode *vp;
+ off_t length;
+ int flags;
+ struct ucred *cred;
+ struct proc *p;
{
register struct indir *inp;
register int i;
register ufs_daddr_t *daddrp;
- register struct vnode *vp = ap->a_vp;
- off_t length = ap->a_length;
struct buf *bp, *sup_bp;
struct timeval tv;
struct ifile *ifp;
@@ -378,7 +374,7 @@ lfs_truncate(ap)
}
#endif
fs->lfs_avail += fragstodb(fs, a_released);
- e1 = vinvalbuf(vp, (length > 0) ? V_SAVE : 0, ap->a_cred, ap->a_p,
+ e1 = vinvalbuf(vp, (length > 0) ? V_SAVE : 0, cred, p,
0, 0);
e2 = VOP_UPDATE(vp, &tv, &tv, 0);
return (e1 ? e1 : e2 ? e2 : 0);
diff --git a/sys/ufs/lfs/lfs_subr.c b/sys/ufs/lfs/lfs_subr.c
index 62ab3ea..ad4fbcc 100644
--- a/sys/ufs/lfs/lfs_subr.c
+++ b/sys/ufs/lfs/lfs_subr.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)lfs_subr.c 8.4 (Berkeley) 5/8/95
- * $Id: lfs_subr.c,v 1.10 1997/02/22 09:47:23 peter Exp $
+ * $Id: lfs_subr.c,v 1.11 1997/08/02 14:33:21 bde Exp $
*/
#include <sys/param.h>
@@ -53,13 +53,11 @@
* remaining space in the directory.
*/
int
-lfs_blkatoff(ap)
- struct vop_blkatoff_args /* {
- struct vnode *a_vp;
- off_t a_offset;
- char **a_res;
- struct buf **a_bpp;
- } */ *ap;
+lfs_blkatoff(vp, offset, res, bpp)
+ struct vnode *vp;
+ off_t offset;
+ char **res;
+ struct buf **bpp;
{
register struct lfs *fs;
struct inode *ip;
@@ -67,19 +65,19 @@ lfs_blkatoff(ap)
ufs_daddr_t lbn;
int bsize, error;
- ip = VTOI(ap->a_vp);
+ ip = VTOI(vp);
fs = ip->i_lfs;
- lbn = lblkno(fs, ap->a_offset);
+ lbn = lblkno(fs, offset);
bsize = blksize(fs, ip, lbn);
- *ap->a_bpp = NULL;
- if (error = bread(ap->a_vp, lbn, bsize, NOCRED, &bp)) {
+ *bpp = NULL;
+ if (error = bread(vp, lbn, bsize, NOCRED, &bp)) {
brelse(bp);
return (error);
}
- if (ap->a_res)
- *ap->a_res = (char *)bp->b_data + blkoff(fs, ap->a_offset);
- *ap->a_bpp = bp;
+ if (res)
+ *res = (char *)bp->b_data + blkoff(fs, offset);
+ *bpp = bp;
return (0);
}
diff --git a/sys/ufs/lfs/lfs_vnops.c b/sys/ufs/lfs/lfs_vnops.c
index b7d930f..a440b2b 100644
--- a/sys/ufs/lfs/lfs_vnops.c
+++ b/sys/ufs/lfs/lfs_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)lfs_vnops.c 8.13 (Berkeley) 6/10/95
- * $Id: lfs_vnops.c,v 1.26 1997/10/15 10:05:23 phk Exp $
+ * $Id: lfs_vnops.c,v 1.27 1997/10/15 13:23:52 phk Exp $
*/
#include <sys/param.h>
@@ -56,6 +56,7 @@
#include <ufs/ufs/quota.h>
#include <ufs/ufs/inode.h>
+#include <ufs/ufs/ufsmount.h>
#include <ufs/ufs/ufs_extern.h>
#include <ufs/lfs/lfs.h>
@@ -73,17 +74,12 @@ static int lfs_write __P((struct vop_write_args *));
vop_t **lfs_vnodeop_p;
static struct vnodeopv_entry_desc lfs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) ufs_vnoperate },
-
- { &vop_blkatoff_desc, (vop_t *) lfs_blkatoff },
{ &vop_bwrite_desc, (vop_t *) lfs_bwrite },
{ &vop_close_desc, (vop_t *) lfs_close },
{ &vop_fsync_desc, (vop_t *) lfs_fsync },
{ &vop_getattr_desc, (vop_t *) lfs_getattr },
{ &vop_read_desc, (vop_t *) lfs_read },
- { &vop_truncate_desc, (vop_t *) lfs_truncate },
{ &vop_update_desc, (vop_t *) lfs_update },
- { &vop_valloc_desc, (vop_t *) lfs_valloc },
- { &vop_vfree_desc, (vop_t *) lfs_vfree },
{ &vop_write_desc, (vop_t *) lfs_write },
{ &vop_lookup_desc, (vop_t *) ufs_lookup },
{ NULL, NULL }
@@ -97,7 +93,6 @@ static struct vnodeopv_entry_desc lfs_specop_entries[] = {
{ &vop_bwrite_desc, (vop_t *) lfs_bwrite },
{ &vop_getattr_desc, (vop_t *) lfs_getattr },
{ &vop_update_desc, (vop_t *) lfs_update },
- { &vop_vfree_desc, (vop_t *) lfs_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc lfs_specop_opv_desc =
@@ -109,7 +104,6 @@ static struct vnodeopv_entry_desc lfs_fifoop_entries[] = {
{ &vop_bwrite_desc, (vop_t *) lfs_bwrite },
{ &vop_getattr_desc, (vop_t *) lfs_getattr },
{ &vop_update_desc, (vop_t *) lfs_update },
- { &vop_vfree_desc, (vop_t *) lfs_vfree },
{ NULL, NULL }
};
static struct vnodeopv_desc lfs_fifoop_opv_desc =
diff --git a/sys/ufs/mfs/mfs_extern.h b/sys/ufs/mfs/mfs_extern.h
index 6b3dc8b..465e434 100644
--- a/sys/ufs/mfs/mfs_extern.h
+++ b/sys/ufs/mfs/mfs_extern.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)mfs_extern.h 8.4 (Berkeley) 3/30/95
- * $Id$
+ * $Id: mfs_extern.h,v 1.9 1997/02/22 09:47:31 peter Exp $
*/
#ifndef _UFS_MFS_MFS_EXTERN_H_
@@ -44,6 +44,4 @@ void mfs_doio __P((struct buf *bp, caddr_t base));
int mfs_mountfs __P((struct vnode *, struct mount *, struct proc *));
int mfs_mountroot __P((void));
-#define mfs_revoke vop_revoke
-
#endif /* !_UFS_MFS_MFS_EXTERN_H_ */
diff --git a/sys/ufs/mfs/mfs_vnops.c b/sys/ufs/mfs/mfs_vnops.c
index ce18df5..0c552bd 100644
--- a/sys/ufs/mfs/mfs_vnops.c
+++ b/sys/ufs/mfs/mfs_vnops.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)mfs_vnops.c 8.11 (Berkeley) 5/22/95
- * $Id: mfs_vnops.c,v 1.23 1997/10/15 10:05:29 phk Exp $
+ * $Id: mfs_vnops.c,v 1.24 1997/10/15 13:23:57 phk Exp $
*/
#include <sys/param.h>
@@ -66,48 +66,19 @@ static int mfs_strategy __P((struct vop_strategy_args *)); /* XXX */
*/
vop_t **mfs_vnodeop_p;
static struct vnodeopv_entry_desc mfs_vnodeop_entries[] = {
- { &vop_default_desc, (vop_t *) vn_default_error },
- { &vop_abortop_desc, (vop_t *) mfs_abortop },
- { &vop_access_desc, (vop_t *) mfs_access },
- { &vop_advlock_desc, (vop_t *) mfs_advlock },
- { &vop_blkatoff_desc, (vop_t *) mfs_blkatoff },
+ { &vop_default_desc, (vop_t *) mfs_badop },
{ &vop_bmap_desc, (vop_t *) mfs_bmap },
- { &vop_bwrite_desc, (vop_t *) mfs_bwrite },
{ &vop_close_desc, (vop_t *) mfs_close },
- { &vop_create_desc, (vop_t *) mfs_create },
{ &vop_fsync_desc, (vop_t *) mfs_fsync },
- { &vop_getattr_desc, (vop_t *) mfs_getattr },
{ &vop_inactive_desc, (vop_t *) mfs_inactive },
{ &vop_ioctl_desc, (vop_t *) mfs_ioctl },
- { &vop_islocked_desc, (vop_t *) mfs_islocked },
- { &vop_link_desc, (vop_t *) mfs_link },
- { &vop_lock_desc, (vop_t *) mfs_lock },
- { &vop_lookup_desc, (vop_t *) mfs_lookup },
- { &vop_mkdir_desc, (vop_t *) mfs_mkdir },
- { &vop_mknod_desc, (vop_t *) mfs_mknod },
- { &vop_mmap_desc, (vop_t *) mfs_mmap },
+ { &vop_islocked_desc, (vop_t *) vop_noislocked },
+ { &vop_lock_desc, (vop_t *) vop_nolock },
{ &vop_open_desc, (vop_t *) mfs_open },
- { &vop_pathconf_desc, (vop_t *) mfs_pathconf },
- { &vop_poll_desc, (vop_t *) mfs_poll },
{ &vop_print_desc, (vop_t *) mfs_print },
- { &vop_read_desc, (vop_t *) mfs_read },
- { &vop_readdir_desc, (vop_t *) mfs_readdir },
- { &vop_readlink_desc, (vop_t *) mfs_readlink },
{ &vop_reclaim_desc, (vop_t *) ufs_reclaim },
- { &vop_remove_desc, (vop_t *) mfs_remove },
- { &vop_rename_desc, (vop_t *) mfs_rename },
- { &vop_revoke_desc, (vop_t *) mfs_revoke },
- { &vop_rmdir_desc, (vop_t *) mfs_rmdir },
- { &vop_seek_desc, (vop_t *) mfs_seek },
- { &vop_setattr_desc, (vop_t *) mfs_setattr },
{ &vop_strategy_desc, (vop_t *) mfs_strategy },
- { &vop_symlink_desc, (vop_t *) mfs_symlink },
- { &vop_truncate_desc, (vop_t *) mfs_truncate },
- { &vop_unlock_desc, (vop_t *) mfs_unlock },
- { &vop_update_desc, (vop_t *) mfs_update },
- { &vop_valloc_desc, (vop_t *) mfs_valloc },
- { &vop_vfree_desc, (vop_t *) mfs_vfree },
- { &vop_write_desc, (vop_t *) mfs_write },
+ { &vop_unlock_desc, (vop_t *) vop_nounlock },
{ NULL, NULL }
};
static struct vnodeopv_desc mfs_vnodeop_opv_desc =
diff --git a/sys/ufs/mfs/mfsnode.h b/sys/ufs/mfs/mfsnode.h
index 53fe40a..34b7b6b 100644
--- a/sys/ufs/mfs/mfsnode.h
+++ b/sys/ufs/mfs/mfsnode.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)mfsnode.h 8.3 (Berkeley) 5/19/95
- * $Id: mfsnode.h,v 1.8 1997/02/22 09:47:34 peter Exp $
+ * $Id: mfsnode.h,v 1.9 1997/09/14 02:58:08 peter Exp $
*/
#ifndef _UFS_MFS_MFSNODE_H_
@@ -57,37 +57,4 @@ 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 ((int (*) __P((struct vop_lookup_args *)))mfs_badop)
-#define mfs_create ((int (*) __P((struct vop_create_args *)))mfs_badop)
-#define mfs_mknod ((int (*) __P((struct vop_mknod_args *)))mfs_badop)
-#define mfs_access ((int (*) __P((struct vop_access_args *)))mfs_badop)
-#define mfs_getattr ((int (*) __P((struct vop_getattr_args *)))mfs_badop)
-#define mfs_setattr ((int (*) __P((struct vop_setattr_args *)))mfs_badop)
-#define mfs_read ((int (*) __P((struct vop_read_args *)))mfs_badop)
-#define mfs_write ((int (*) __P((struct vop_write_args *)))mfs_badop)
-#define mfs_poll ((int (*) __P((struct vop_poll_args *)))mfs_badop)
-#define mfs_mmap ((int (*) __P((struct vop_mmap_args *)))mfs_badop)
-#define mfs_seek ((int (*) __P((struct vop_seek_args *)))mfs_badop)
-#define mfs_remove ((int (*) __P((struct vop_remove_args *)))mfs_badop)
-#define mfs_link ((int (*) __P((struct vop_link_args *)))mfs_badop)
-#define mfs_rename ((int (*) __P((struct vop_rename_args *)))mfs_badop)
-#define mfs_mkdir ((int (*) __P((struct vop_mkdir_args *)))mfs_badop)
-#define mfs_rmdir ((int (*) __P((struct vop_rmdir_args *)))mfs_badop)
-#define mfs_symlink ((int (*) __P((struct vop_symlink_args *)))mfs_badop)
-#define mfs_readdir ((int (*) __P((struct vop_readdir_args *)))mfs_badop)
-#define mfs_readlink ((int (*) __P((struct vop_readlink_args *)))mfs_badop)
-#define mfs_abortop ((int (*) __P((struct vop_abortop_args *)))mfs_badop)
-#define mfs_lock ((int (*) __P((struct vop_lock_args *)))vop_nolock)
-#define mfs_unlock ((int (*) __P((struct vop_unlock_args *)))vop_nounlock)
-#define mfs_islocked ((int(*) __P((struct vop_islocked_args *)))vop_noislocked)
-#define mfs_pathconf ((int (*) __P((struct vop_pathconf_args *)))mfs_badop)
-#define mfs_advlock ((int (*) __P((struct vop_advlock_args *)))mfs_badop)
-#define mfs_blkatoff ((int (*) __P((struct vop_blkatoff_args *)))mfs_badop)
-#define mfs_valloc ((int (*) __P((struct vop_valloc_args *)))mfs_badop)
-#define mfs_vfree ((int (*) __P((struct vop_vfree_args *)))mfs_badop)
-#define mfs_truncate ((int (*) __P((struct vop_truncate_args *)))mfs_badop)
-#define mfs_update ((int (*) __P((struct vop_update_args *)))mfs_badop)
-#define mfs_bwrite ((int (*) __P((struct vop_bwrite_args *)))vn_bwrite)
-
#endif
diff --git a/sys/ufs/ufs/ufs_extern.h b/sys/ufs/ufs/ufs_extern.h
index 1c565d4..e897ede 100644
--- a/sys/ufs/ufs/ufs_extern.h
+++ b/sys/ufs/ufs/ufs_extern.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_extern.h 8.10 (Berkeley) 5/14/95
- * $Id: ufs_extern.h,v 1.18 1997/10/10 18:18:12 phk Exp $
+ * $Id: ufs_extern.h,v 1.19 1997/10/15 13:24:02 phk Exp $
*/
#ifndef _UFS_UFS_EXTERN_H_
@@ -90,11 +90,6 @@ int ufs_inactive __P((struct vop_inactive_args *));
int ufs_init __P((struct vfsconf *));
int ufs_ioctl __P((struct vop_ioctl_args *));
int ufs_islocked __P((struct vop_islocked_args *));
-#ifdef NFS
-#define ufs_lease_check lease_check
-#else
-#define ufs_lease_check ((int (*) __P((struct vop_lease_args *)))nullop)
-#endif
int ufs_link __P((struct vop_link_args *));
int ufs_lock __P((struct vop_lock_args *));
int ufs_lookup __P((struct vop_cachedlookup_args *));
@@ -110,11 +105,9 @@ int ufs_readlink __P((struct vop_readlink_args *));
int ufs_reclaim __P((struct vop_reclaim_args *));
int ufs_remove __P((struct vop_remove_args *));
int ufs_rename __P((struct vop_rename_args *));
-#define ufs_revoke vop_revoke
int ufs_rmdir __P((struct vop_rmdir_args *));
int ufs_root __P((struct mount *, struct vnode **));
int ufs_seek __P((struct vop_seek_args *));
-#define ufs_poll vop_nopoll
int ufs_setattr __P((struct vop_setattr_args *));
int ufs_start __P((struct mount *, int, struct proc *));
int ufs_strategy __P((struct vop_strategy_args *));
diff --git a/sys/ufs/ufs/ufs_inode.c b/sys/ufs/ufs/ufs_inode.c
index 812e86d..e635f29 100644
--- a/sys/ufs/ufs/ufs_inode.c
+++ b/sys/ufs/ufs/ufs_inode.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_inode.c 8.9 (Berkeley) 5/14/95
- * $Id: ufs_inode.c,v 1.17 1997/10/14 14:22:31 phk Exp $
+ * $Id: ufs_inode.c,v 1.18 1997/10/14 18:46:48 phk Exp $
*/
#include "opt_quota.h"
@@ -83,12 +83,12 @@ ufs_inactive(ap)
if (!getinoquota(ip))
(void)chkiq(ip, -1, NOCRED, 0);
#endif
- error = VOP_TRUNCATE(vp, (off_t)0, 0, NOCRED, p);
+ error = UFS_TRUNCATE(vp, (off_t)0, 0, NOCRED, p);
ip->i_rdev = 0;
mode = ip->i_mode;
ip->i_mode = 0;
ip->i_flag |= IN_CHANGE | IN_UPDATE;
- VOP_VFREE(vp, ip->i_number, mode);
+ UFS_VFREE(vp, ip->i_number, mode);
}
if (ip->i_flag & (IN_ACCESS | IN_CHANGE | IN_MODIFIED | IN_UPDATE)) {
gettime(&tv);
diff --git a/sys/ufs/ufs/ufs_lookup.c b/sys/ufs/ufs/ufs_lookup.c
index e0eb989..5f0201a 100644
--- a/sys/ufs/ufs/ufs_lookup.c
+++ b/sys/ufs/ufs/ufs_lookup.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_lookup.c 8.15 (Berkeley) 6/16/95
- * $Id: ufs_lookup.c,v 1.16 1997/09/02 20:06:58 bde Exp $
+ * $Id: ufs_lookup.c,v 1.17 1997/09/10 19:47:37 phk Exp $
*/
#include <sys/param.h>
@@ -185,7 +185,7 @@ ufs_lookup(ap)
} else {
dp->i_offset = dp->i_diroff;
if ((entryoffsetinblock = dp->i_offset & bmask) &&
- (error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
+ (error = UFS_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp)))
return (error);
numdirpasses = 2;
nchstats.ncs_2passes++;
@@ -203,7 +203,7 @@ searchloop:
if (bp != NULL)
brelse(bp);
error =
- VOP_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp);
+ UFS_BLKATOFF(vdp, (off_t)dp->i_offset, NULL, &bp);
if (error)
return (error);
entryoffsetinblock = 0;
@@ -715,7 +715,7 @@ ufs_direnter2(dvp, dirp, cr, p)
/*
* Get the block containing the space for the new directory entry.
*/
- error = VOP_BLKATOFF(dvp, (off_t)dp->i_offset, &dirbuf, &bp);
+ error = UFS_BLKATOFF(dvp, (off_t)dp->i_offset, &dirbuf, &bp);
if (error)
return (error);
/*
@@ -770,7 +770,7 @@ ufs_direnter2(dvp, dirp, cr, p)
}
dp->i_flag |= IN_CHANGE | IN_UPDATE;
if (!error && dp->i_endoff && dp->i_endoff < dp->i_size)
- error = VOP_TRUNCATE(dvp, (off_t)dp->i_endoff, IO_SYNC, cr, p);
+ error = UFS_TRUNCATE(dvp, (off_t)dp->i_endoff, IO_SYNC, cr, p);
return (error);
}
@@ -803,7 +803,7 @@ ufs_dirremove(dvp, cnp)
* Whiteout entry: set d_ino to WINO.
*/
if (error =
- VOP_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp))
+ UFS_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp))
return (error);
ep->d_ino = WINO;
ep->d_type = DT_WHT;
@@ -817,7 +817,7 @@ ufs_dirremove(dvp, cnp)
* First entry in block: set d_ino to zero.
*/
error =
- VOP_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp);
+ UFS_BLKATOFF(dvp, (off_t)dp->i_offset, (char **)&ep, &bp);
if (error)
return (error);
ep->d_ino = 0;
@@ -828,7 +828,7 @@ ufs_dirremove(dvp, cnp)
/*
* Collapse new free space into previous entry.
*/
- error = VOP_BLKATOFF(dvp, (off_t)(dp->i_offset - dp->i_count),
+ error = UFS_BLKATOFF(dvp, (off_t)(dp->i_offset - dp->i_count),
(char **)&ep, &bp);
if (error)
return (error);
@@ -858,7 +858,7 @@ ufs_dirrewrite(dp, ip, cnp)
struct vnode *vdp = ITOV(dp);
int error;
- error = VOP_BLKATOFF(vdp, (off_t)dp->i_offset, (char **)&ep, &bp);
+ error = UFS_BLKATOFF(vdp, (off_t)dp->i_offset, (char **)&ep, &bp);
if (error)
return (error);
ep->d_ino = ip->i_number;
diff --git a/sys/ufs/ufs/ufs_readwrite.c b/sys/ufs/ufs/ufs_readwrite.c
index 929a289..afbe95f 100644
--- a/sys/ufs/ufs/ufs_readwrite.c
+++ b/sys/ufs/ufs/ufs_readwrite.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_readwrite.c 8.11 (Berkeley) 5/8/95
- * $Id: ufs_readwrite.c,v 1.30 1997/08/25 08:18:39 kato Exp $
+ * $Id: ufs_readwrite.c,v 1.31 1997/09/27 13:40:20 kato Exp $
*/
#ifdef LFS_READWRITE
@@ -305,7 +305,7 @@ WRITE(ap)
ip->i_mode &= ~(ISUID | ISGID);
if (error) {
if (ioflag & IO_UNIT) {
- (void)VOP_TRUNCATE(vp, osize,
+ (void)UFS_TRUNCATE(vp, osize,
ioflag & IO_SYNC, ap->a_cred, uio->uio_procp);
uio->uio_offset -= resid - uio->uio_resid;
uio->uio_resid = resid;
diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c
index 89166b3..1e67920 100644
--- a/sys/ufs/ufs/ufs_vnops.c
+++ b/sys/ufs/ufs/ufs_vnops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
- * $Id: ufs_vnops.c,v 1.58 1997/09/21 04:24:14 dyson Exp $
+ * $Id: ufs_vnops.c,v 1.59 1997/10/15 13:24:07 phk Exp $
*/
#include "opt_quota.h"
@@ -415,7 +415,7 @@ ufs_setattr(ap)
return (EROFS);
break;
}
- if (error = VOP_TRUNCATE(vp, vap->va_size, 0, cred, p))
+ if (error = UFS_TRUNCATE(vp, vap->va_size, 0, cred, p))
return (error);
}
ip = VTOI(vp);
@@ -1156,7 +1156,7 @@ abortit:
if (doingdirectory) {
if (--xp->i_nlink != 0)
panic("ufs_rename: linked directory");
- error = VOP_TRUNCATE(tvp, (off_t)0, IO_SYNC,
+ error = UFS_TRUNCATE(tvp, (off_t)0, IO_SYNC,
tcnp->cn_cred, tcnp->cn_proc);
}
xp->i_flag |= IN_CHANGE;
@@ -1334,7 +1334,7 @@ ufs_mkdir(ap)
* but not have it entered in the parent directory. The entry is
* made later after writing "." and ".." entries.
*/
- error = VOP_VALLOC(dvp, dmode, cnp->cn_cred, &tvp);
+ error = UFS_VALLOC(dvp, dmode, cnp->cn_cred, &tvp);
if (error)
goto out;
ip = VTOI(tvp);
@@ -1344,7 +1344,7 @@ ufs_mkdir(ap)
if ((error = getinoquota(ip)) ||
(error = chkiq(ip, 1, cnp->cn_cred, 0))) {
zfree(namei_zone, cnp->cn_pnbuf);
- VOP_VFREE(tvp, ip->i_number, dmode);
+ UFS_VFREE(tvp, ip->i_number, dmode);
vput(tvp);
vput(dvp);
return (error);
@@ -1520,7 +1520,7 @@ ufs_rmdir(ap)
* worry about them later.
*/
ip->i_nlink -= 2;
- error = VOP_TRUNCATE(vp, (off_t)0, IO_SYNC, cnp->cn_cred,
+ error = UFS_TRUNCATE(vp, (off_t)0, IO_SYNC, cnp->cn_cred,
cnp->cn_proc);
cache_purge(ITOV(ip));
out:
@@ -2092,7 +2092,7 @@ ufs_makeinode(mode, dvp, vpp, cnp)
if ((mode & IFMT) == 0)
mode |= IFREG;
- error = VOP_VALLOC(dvp, mode, cnp->cn_cred, &tvp);
+ error = UFS_VALLOC(dvp, mode, cnp->cn_cred, &tvp);
if (error) {
zfree(namei_zone, cnp->cn_pnbuf);
vput(dvp);
@@ -2105,7 +2105,7 @@ ufs_makeinode(mode, dvp, vpp, cnp)
if ((error = getinoquota(ip)) ||
(error = chkiq(ip, 1, cnp->cn_cred, 0))) {
zfree(namei_zone, cnp->cn_pnbuf);
- VOP_VFREE(tvp, ip->i_number, mode);
+ UFS_VFREE(tvp, ip->i_number, mode);
vput(tvp);
vput(dvp);
return (error);
@@ -2174,23 +2174,16 @@ ufs_missingop(ap)
vop_t **ufs_vnodeop_p;
static struct vnodeopv_entry_desc ufs_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vn_default_error },
-
- { &vop_blkatoff_desc, (vop_t *) ufs_missingop },
{ &vop_fsync_desc, (vop_t *) ufs_missingop },
{ &vop_getpages_desc, (vop_t *) ufs_missingop },
{ &vop_read_desc, (vop_t *) ufs_missingop },
{ &vop_reallocblks_desc, (vop_t *) ufs_missingop },
- { &vop_truncate_desc, (vop_t *) ufs_missingop },
{ &vop_update_desc, (vop_t *) ufs_missingop },
- { &vop_valloc_desc, (vop_t *) ufs_missingop },
- { &vop_vfree_desc, (vop_t *) ufs_missingop },
{ &vop_write_desc, (vop_t *) ufs_missingop },
-
{ &vop_abortop_desc, (vop_t *) ufs_abortop },
{ &vop_access_desc, (vop_t *) ufs_access },
{ &vop_advlock_desc, (vop_t *) ufs_advlock },
{ &vop_bmap_desc, (vop_t *) ufs_bmap },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_cachedlookup_desc, (vop_t *) ufs_lookup },
{ &vop_close_desc, (vop_t *) ufs_close },
{ &vop_create_desc, (vop_t *) ufs_create },
@@ -2198,7 +2191,6 @@ static struct vnodeopv_entry_desc ufs_vnodeop_entries[] = {
{ &vop_inactive_desc, (vop_t *) ufs_inactive },
{ &vop_ioctl_desc, (vop_t *) ufs_ioctl },
{ &vop_islocked_desc, (vop_t *) ufs_islocked },
- { &vop_lease_desc, (vop_t *) ufs_lease_check },
{ &vop_link_desc, (vop_t *) ufs_link },
{ &vop_lock_desc, (vop_t *) ufs_lock },
{ &vop_lookup_desc, (vop_t *) vfs_cache_lookup },
@@ -2207,14 +2199,12 @@ static struct vnodeopv_entry_desc ufs_vnodeop_entries[] = {
{ &vop_mmap_desc, (vop_t *) ufs_mmap },
{ &vop_open_desc, (vop_t *) ufs_open },
{ &vop_pathconf_desc, (vop_t *) ufs_pathconf },
- { &vop_poll_desc, (vop_t *) ufs_poll },
{ &vop_print_desc, (vop_t *) ufs_print },
{ &vop_readdir_desc, (vop_t *) ufs_readdir },
{ &vop_readlink_desc, (vop_t *) ufs_readlink },
{ &vop_reclaim_desc, (vop_t *) ufs_reclaim },
{ &vop_remove_desc, (vop_t *) ufs_remove },
{ &vop_rename_desc, (vop_t *) ufs_rename },
- { &vop_revoke_desc, (vop_t *) ufs_revoke },
{ &vop_rmdir_desc, (vop_t *) ufs_rmdir },
{ &vop_seek_desc, (vop_t *) ufs_seek },
{ &vop_setattr_desc, (vop_t *) ufs_setattr },
@@ -2230,13 +2220,9 @@ static struct vnodeopv_desc ufs_vnodeop_opv_desc =
vop_t **ufs_specop_p;
static struct vnodeopv_entry_desc ufs_specop_entries[] = {
{ &vop_default_desc, (vop_t *) spec_vnoperate },
-
{ &vop_fsync_desc, (vop_t *) ufs_missingop },
{ &vop_update_desc, (vop_t *) ufs_missingop },
- { &vop_vfree_desc, (vop_t *) ufs_missingop },
-
{ &vop_access_desc, (vop_t *) ufs_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_close_desc, (vop_t *) ufsspec_close },
{ &vop_getattr_desc, (vop_t *) ufs_getattr },
{ &vop_inactive_desc, (vop_t *) ufs_inactive },
@@ -2256,13 +2242,9 @@ static struct vnodeopv_desc ufs_specop_opv_desc =
vop_t **ufs_fifoop_p;
static struct vnodeopv_entry_desc ufs_fifoop_entries[] = {
{ &vop_default_desc, (vop_t *) fifo_vnoperate },
-
{ &vop_fsync_desc, (vop_t *) ufs_missingop },
{ &vop_update_desc, (vop_t *) ufs_missingop },
- { &vop_vfree_desc, (vop_t *) ufs_missingop },
-
{ &vop_access_desc, (vop_t *) ufs_access },
- { &vop_bwrite_desc, (vop_t *) vn_bwrite },
{ &vop_close_desc, (vop_t *) ufsfifo_close },
{ &vop_getattr_desc, (vop_t *) ufs_getattr },
{ &vop_inactive_desc, (vop_t *) ufs_inactive },
diff --git a/sys/ufs/ufs/ufsmount.h b/sys/ufs/ufs/ufsmount.h
index d57dd59..50bfe57 100644
--- a/sys/ufs/ufs/ufsmount.h
+++ b/sys/ufs/ufs/ufsmount.h
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ufsmount.h 8.6 (Berkeley) 3/30/95
- * $Id: ufsmount.h,v 1.9 1997/10/10 18:18:13 phk Exp $
+ * $Id: ufsmount.h,v 1.10 1997/10/12 20:26:28 phk Exp $
*/
#ifndef _UFS_UFS_UFSMOUNT_H_
@@ -97,8 +97,17 @@ struct ufsmount {
struct netexport um_export; /* export information */
int64_t um_savedmaxfilesize; /* XXX - limit maxfilesize */
struct malloc_type *um_malloctype; /* The inodes malloctype */
+ int (*um_blkatoff) __P((struct vnode *, off_t, char **, struct buf **));
+ int (*um_truncate) __P((struct vnode *, off_t, int, struct ucred *, struct proc *));
+ int (*um_valloc) __P((struct vnode *, int, struct ucred *, struct vnode **));
+ int (*um_vfree) __P((struct vnode *, ino_t, int));
};
+#define UFS_BLKATOFF(aa, bb, cc, dd) VFSTOUFS((aa)->v_mount)->um_blkatoff(aa, bb, cc, dd)
+#define UFS_TRUNCATE(aa, bb, cc, dd, ee) VFSTOUFS((aa)->v_mount)->um_truncate(aa, bb, cc, dd, ee)
+#define UFS_VALLOC(aa, bb, cc, dd) VFSTOUFS((aa)->v_mount)->um_valloc(aa, bb, cc, dd)
+#define UFS_VFREE(aa, bb, cc) VFSTOUFS((aa)->v_mount)->um_vfree(aa, bb, cc)
+
/*
* Flags describing the state of quotas.
*/
OpenPOWER on IntegriCloud