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.1 (Berkeley) 11/01/91 8 */ 9 10 struct buf; 11 struct fs; 12 struct inode; 13 struct mount; 14 struct nameidata; 15 struct proc; 16 struct statfs; 17 struct timeval; 18 struct ucred; 19 struct uio; 20 struct vnode; 21 22 __BEGIN_DECLS 23 int ffs_alloc __P((struct inode *, daddr_t, daddr_t, int, daddr_t *)); 24 int ffs_balloc __P((struct inode *, daddr_t, int, struct buf **, int)); 25 int ffs_blkatoff __P((struct inode *, off_t, char **, struct buf **)); 26 int ffs_blkfree __P((struct inode *, daddr_t, off_t)); 27 daddr_t ffs_blkpref __P((struct inode *, daddr_t, int, daddr_t *)); 28 int ffs_bmap __P((struct inode *, daddr_t, daddr_t *)); 29 void ffs_clrblock __P((struct fs *, u_char *, daddr_t)); 30 void ffs_fragacct __P((struct fs *, int, long [], int)); 31 int ffs_fsync 32 __P((struct vnode *, int, struct ucred *, int, struct proc *)); 33 int ffs_ialloc __P((struct inode *, int, struct ucred *, struct inode **)); 34 void ffs_ifree __P((struct inode *, ino_t, int)); 35 int ffs_iget __P((struct inode *, ino_t, struct inode **)); 36 int ffs_init __P((void)); 37 int ffs_isblock __P((struct fs *, u_char *, daddr_t)); 38 int ffs_itrunc __P((struct inode *, u_long, int)); 39 int ffs_iupdat 40 __P((struct inode *, struct timeval *, struct timeval *, int)); 41 int ffs_mount __P((struct mount *, 42 char *, caddr_t, struct nameidata *, struct proc *)); 43 int ffs_mountfs __P((struct vnode *, struct mount *, struct proc *)); 44 int ffs_mountroot __P((void)); 45 int ffs_read __P((struct vnode *, struct uio *, int, struct ucred *)); 46 int ffs_realloccg 47 __P((struct inode *, off_t, daddr_t, int, int, struct buf **)); 48 int ffs_reclaim __P((struct vnode *)); 49 void ffs_setblock __P((struct fs *, u_char *, daddr_t)); 50 int ffs_statfs __P((struct mount *, struct statfs *, struct proc *)); 51 int ffs_sync __P((struct mount *, int)); 52 int ffs_unmount __P((struct mount *, int, struct proc *)); 53 int ffs_write __P((struct vnode *, struct uio *, int, struct ucred *)); 54 55 int bwrite(); /* FFS needs a bwrite routine. XXX */ 56 57 #ifdef DIAGNOSTIC 58 void ffs_checkoverlap __P((struct buf *, struct inode *)); 59 #endif 60 __END_DECLS 61 62 extern int inside[], around[]; 63 extern u_char *fragtbl[]; 64