1 /*- 2 * Copyright (c) 1991 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)ffs_extern.h 7.11 (Berkeley) 05/27/92 8 */ 9 10 struct buf; 11 struct fid; 12 struct fs; 13 struct inode; 14 struct mount; 15 struct nameidata; 16 struct proc; 17 struct statfs; 18 struct timeval; 19 struct ucred; 20 struct uio; 21 struct vnode; 22 23 __BEGIN_DECLS 24 int ffs_alloc __P((struct inode *, 25 daddr_t, daddr_t, int, struct ucred *, daddr_t *)); 26 int ffs_balloc __P((struct inode *, 27 daddr_t, int, struct ucred *, struct buf **, int)); 28 int ffs_blkatoff __P((struct vop_blkatoff_args *)); 29 int ffs_blkfree __P((struct inode *, daddr_t, long)); 30 daddr_t ffs_blkpref __P((struct inode *, daddr_t, int, daddr_t *)); 31 int ffs_bmap __P((struct vop_bmap_args *)); 32 void ffs_clrblock __P((struct fs *, u_char *, daddr_t)); 33 int ffs_fhtovp __P((struct mount *, struct fid *, int, struct vnode **)); 34 void ffs_fragacct __P((struct fs *, int, long [], int)); 35 int ffs_fsync __P((struct vop_fsync_args *)); 36 int ffs_inactive __P((struct vop_inactive_args *)); 37 int ffs_init __P((void)); 38 int ffs_isblock __P((struct fs *, u_char *, daddr_t)); 39 int ffs_mount __P((struct mount *, 40 char *, caddr_t, struct nameidata *, struct proc *)); 41 int ffs_mountfs __P((struct vnode *, struct mount *, struct proc *)); 42 int ffs_mountroot __P((void)); 43 int ffs_read __P((struct vop_read_args *)); 44 int ffs_realloccg __P((struct inode *, 45 daddr_t, daddr_t, int, int, struct ucred *, struct buf **)); 46 int ffs_reclaim __P((struct vop_reclaim_args *)); 47 int ffs_root __P((struct mount *, struct vnode **)); 48 void ffs_setblock __P((struct fs *, u_char *, daddr_t)); 49 int ffs_statfs __P((struct mount *, struct statfs *, struct proc *)); 50 int ffs_sync __P((struct mount *, int)); 51 int ffs_truncate __P((struct vop_truncate_args *)); 52 int ffs_unmount __P((struct mount *, int, struct proc *)); 53 int ffs_update __P((struct vop_update_args *)); 54 int ffs_valloc __P((struct vop_valloc_args *)); 55 int ffs_vfree __P((struct vop_vfree_args *)); 56 int ffs_vget __P((struct vop_vget_args *)); 57 int ffs_vptofh __P((struct vnode *, struct fid *)); 58 int ffs_write __P((struct vop_write_args *)); 59 60 int bwrite(); /* FFS needs a bwrite routine. XXX */ 61 62 #ifdef DIAGNOSTIC 63 void ffs_checkoverlap __P((struct buf *, struct inode *)); 64 #endif 65 __END_DECLS 66 67 extern int (**ffs_vnodeop_p)(); 68 extern int (**ffs_specop_p)(); 69 #ifdef FIFO 70 extern int (**ffs_fifoop_p)(); 71 #define FFS_FIFOOPS ffs_fifoop_p 72 #else 73 #define FFS_FIFOOPS NULL 74 #endif 75