1 /*- 2 * Copyright (c) 1991, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)lfs_extern.h 8.6 (Berkeley) 05/08/95 8 */ 9 10 struct fid; 11 struct mount; 12 struct nameidata; 13 struct proc; 14 struct statfs; 15 struct timeval; 16 struct inode; 17 struct uio; 18 struct mbuf; 19 20 __BEGIN_DECLS 21 u_long cksum __P((void *, size_t)); /* XXX */ 22 int lfs_balloc __P((struct vnode *, int, u_long, ufs_daddr_t, struct buf **)); 23 int lfs_blkatoff __P((struct vop_blkatoff_args *)); 24 int lfs_bwrite __P((struct vop_bwrite_args *)); 25 int lfs_check __P((struct vnode *, ufs_daddr_t)); 26 int lfs_close __P((struct vop_close_args *)); 27 int lfs_create __P((struct vop_create_args *)); 28 int lfs_fhtovp __P((struct mount *, struct fid *, struct mbuf *, 29 struct vnode **, int *, struct ucred **)); 30 int lfs_fsync __P((struct vop_fsync_args *)); 31 int lfs_getattr __P((struct vop_getattr_args *)); 32 struct dinode * 33 lfs_ifind __P((struct lfs *, ino_t, struct dinode *)); 34 int lfs_inactive __P((struct vop_inactive_args *)); 35 int lfs_init __P((struct vfsconf *)); 36 int lfs_initseg __P((struct lfs *)); 37 int lfs_link __P((struct vop_link_args *)); 38 int lfs_makeinode __P((int, struct nameidata *, struct inode **)); 39 int lfs_mkdir __P((struct vop_mkdir_args *)); 40 int lfs_mknod __P((struct vop_mknod_args *)); 41 int lfs_mount __P((struct mount *, 42 char *, caddr_t, struct nameidata *, struct proc *)); 43 int lfs_mountroot __P((void)); 44 struct buf * 45 lfs_newbuf __P((struct vnode *, ufs_daddr_t, size_t)); 46 int lfs_read __P((struct vop_read_args *)); 47 int lfs_reclaim __P((struct vop_reclaim_args *)); 48 int lfs_remove __P((struct vop_remove_args *)); 49 int lfs_rmdir __P((struct vop_rmdir_args *)); 50 int lfs_rename __P((struct vop_rename_args *)); 51 void lfs_seglock __P((struct lfs *, unsigned long flags)); 52 void lfs_segunlock __P((struct lfs *)); 53 int lfs_segwrite __P((struct mount *, int)); 54 int lfs_statfs __P((struct mount *, struct statfs *, struct proc *)); 55 int lfs_symlink __P((struct vop_symlink_args *)); 56 int lfs_sync __P((struct mount *, int, struct ucred *, struct proc *)); 57 #define lfs_sysctl ((int (*) __P((int *, u_int, void *, size_t *, void *, \ 58 size_t, struct proc *)))eopnotsupp) 59 int lfs_truncate __P((struct vop_truncate_args *)); 60 int lfs_unmount __P((struct mount *, int, struct proc *)); 61 int lfs_update __P((struct vop_update_args *)); 62 int lfs_valloc __P((struct vop_valloc_args *)); 63 int lfs_vcreate __P((struct mount *, ino_t, struct vnode **)); 64 int lfs_vfree __P((struct vop_vfree_args *)); 65 int lfs_vflush __P((struct vnode *)); 66 int lfs_vget __P((struct mount *, ino_t, struct vnode **)); 67 int lfs_vptofh __P((struct vnode *, struct fid *)); 68 int lfs_vref __P((struct vnode *)); 69 void lfs_vunref __P((struct vnode *)); 70 int lfs_write __P((struct vop_write_args *)); 71 #ifdef DEBUG 72 void lfs_dump_dinode __P((struct dinode *)); 73 void lfs_dump_super __P((struct lfs *)); 74 #endif 75 __END_DECLS 76 extern int lfs_mount_type; 77 extern int (**lfs_vnodeop_p)(); 78 extern int (**lfs_specop_p)(); 79 #ifdef FIFO 80 extern int (**lfs_fifoop_p)(); 81 #define LFS_FIFOOPS lfs_fifoop_p 82 #else 83 #define LFS_FIFOOPS NULL 84 #endif 85