Deleted Added
full compact
ffs_extern.h (92462) ffs_extern.h (92728)
1/*-
2 * Copyright (c) 1991, 1993, 1994
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 17 unchanged lines hidden (view full) ---

26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)ffs_extern.h 8.6 (Berkeley) 3/30/95
1/*-
2 * Copyright (c) 1991, 1993, 1994
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 17 unchanged lines hidden (view full) ---

26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)ffs_extern.h 8.6 (Berkeley) 3/30/95
34 * $FreeBSD: head/sys/ufs/ffs/ffs_extern.h 92462 2002-03-17 01:25:47Z mckusick $
34 * $FreeBSD: head/sys/ufs/ffs/ffs_extern.h 92728 2002-03-19 22:40:48Z alfred $
35 */
36
37#ifndef _UFS_FFS_EXTERN_H
38#define _UFS_FFS_EXTERN_H
39
40struct buf;
41struct cg;
42struct fid;

--- 6 unchanged lines hidden (view full) ---

49struct statfs;
50struct ucred;
51struct vnode;
52struct vop_balloc_args;
53struct vop_fsync_args;
54struct vop_reallocblks_args;
55struct vop_copyonwrite_args;
56
35 */
36
37#ifndef _UFS_FFS_EXTERN_H
38#define _UFS_FFS_EXTERN_H
39
40struct buf;
41struct cg;
42struct fid;

--- 6 unchanged lines hidden (view full) ---

49struct statfs;
50struct ucred;
51struct vnode;
52struct vop_balloc_args;
53struct vop_fsync_args;
54struct vop_reallocblks_args;
55struct vop_copyonwrite_args;
56
57int ffs_alloc __P((struct inode *,
58 ufs_daddr_t, ufs_daddr_t, int, struct ucred *, ufs_daddr_t *));
59int ffs_balloc __P((struct vnode *a_vp, off_t a_startoffset, int a_size,
60 struct ucred *a_cred, int a_flags, struct buf **a_bpp));
61int ffs_blkatoff __P((struct vnode *, off_t, char **, struct buf **));
62void ffs_blkfree __P((struct fs *, struct vnode *, ufs_daddr_t, long,
63 ino_t));
64ufs_daddr_t ffs_blkpref __P((struct inode *, ufs_daddr_t, int, ufs_daddr_t *));
65void ffs_clrblock __P((struct fs *, u_char *, ufs_daddr_t));
66void ffs_clusteracct __P((struct fs *, struct cg *, ufs_daddr_t, int));
67int ffs_fhtovp __P((struct mount *, struct fid *, struct vnode **));
68int ffs_flushfiles __P((struct mount *, int, struct thread *));
69void ffs_fragacct __P((struct fs *, int, int32_t [], int));
70int ffs_freefile __P((struct fs *, struct vnode *, ino_t, int ));
71int ffs_isblock __P((struct fs *, u_char *, ufs_daddr_t));
72int ffs_isfreeblock __P((struct fs *, unsigned char *, ufs_daddr_t));
73int ffs_mountfs __P((struct vnode *, struct mount *, struct thread *,
74 struct malloc_type *));
75int ffs_mountroot __P((void));
76int ffs_mount __P((struct mount *, char *, caddr_t, struct nameidata *,
77 struct thread *));
78int ffs_reallocblks __P((struct vop_reallocblks_args *));
79int ffs_realloccg __P((struct inode *,
80 ufs_daddr_t, ufs_daddr_t, int, int, struct ucred *, struct buf **));
81void ffs_setblock __P((struct fs *, u_char *, ufs_daddr_t));
82int ffs_snapblkfree __P((struct fs *, struct vnode *, ufs_daddr_t,
83 long, ino_t));
84void ffs_snapremove __P((struct vnode *vp));
85int ffs_snapshot __P((struct mount *mp, char *snapfile));
86void ffs_snapshot_mount __P((struct mount *mp));
87void ffs_snapshot_unmount __P((struct mount *mp));
88int ffs_statfs __P((struct mount *, struct statfs *, struct thread *));
89int ffs_sync __P((struct mount *, int, struct ucred *, struct thread *));
90int ffs_truncate __P((struct vnode *, off_t, int, struct ucred *, struct thread *));
91int ffs_unmount __P((struct mount *, int, struct thread *));
92int ffs_update __P((struct vnode *, int));
93int ffs_valloc __P((struct vnode *, int, struct ucred *, struct vnode **));
57int ffs_alloc(struct inode *,
58 ufs_daddr_t, ufs_daddr_t, int, struct ucred *, ufs_daddr_t *);
59int ffs_balloc(struct vnode *a_vp, off_t a_startoffset, int a_size,
60 struct ucred *a_cred, int a_flags, struct buf **a_bpp);
61int ffs_blkatoff(struct vnode *, off_t, char **, struct buf **);
62void ffs_blkfree(struct fs *, struct vnode *, ufs_daddr_t, long, ino_t);
63ufs_daddr_t ffs_blkpref(struct inode *, ufs_daddr_t, int, ufs_daddr_t *);
64void ffs_clrblock(struct fs *, u_char *, ufs_daddr_t);
65void ffs_clusteracct (struct fs *, struct cg *, ufs_daddr_t, int);
66int ffs_fhtovp(struct mount *, struct fid *, struct vnode **);
67int ffs_flushfiles(struct mount *, int, struct thread *);
68void ffs_fragacct(struct fs *, int, int32_t [], int);
69int ffs_freefile(struct fs *, struct vnode *, ino_t, int );
70int ffs_isblock(struct fs *, u_char *, ufs_daddr_t);
71int ffs_isfreeblock(struct fs *, unsigned char *, ufs_daddr_t);
72int ffs_mountfs(struct vnode *, struct mount *, struct thread *,
73 struct malloc_type *);
74int ffs_mountroot(void);
75int ffs_mount(struct mount *, char *, caddr_t, struct nameidata *,
76 struct thread *);
77int ffs_reallocblks(struct vop_reallocblks_args *);
78int ffs_realloccg(struct inode *,
79 ufs_daddr_t, ufs_daddr_t, int, int, struct ucred *, struct buf **);
80void ffs_setblock(struct fs *, u_char *, ufs_daddr_t);
81int ffs_snapblkfree(struct fs *, struct vnode *, ufs_daddr_t, long, ino_t);
82void ffs_snapremove(struct vnode *vp);
83int ffs_snapshot(struct mount *mp, char *snapfile);
84void ffs_snapshot_mount(struct mount *mp);
85void ffs_snapshot_unmount(struct mount *mp);
86int ffs_statfs(struct mount *, struct statfs *, struct thread *);
87int ffs_sync(struct mount *, int, struct ucred *, struct thread *);
88int ffs_truncate(struct vnode *, off_t, int, struct ucred *, struct thread *);
89int ffs_unmount(struct mount *, int, struct thread *);
90int ffs_update(struct vnode *, int);
91int ffs_valloc(struct vnode *, int, struct ucred *, struct vnode **);
94
92
95int ffs_vfree __P((struct vnode *, ino_t, int));
96int ffs_vget __P((struct mount *, ino_t, int, struct vnode **));
97int ffs_vptofh __P((struct vnode *, struct fid *));
93int ffs_vfree(struct vnode *, ino_t, int);
94int ffs_vget(struct mount *, ino_t, int, struct vnode **);
95int ffs_vptofh(struct vnode *, struct fid *);
98
99extern vop_t **ffs_vnodeop_p;
100extern vop_t **ffs_specop_p;
101extern vop_t **ffs_fifoop_p;
102
103/*
104 * Soft update function prototypes.
105 */
96
97extern vop_t **ffs_vnodeop_p;
98extern vop_t **ffs_specop_p;
99extern vop_t **ffs_fifoop_p;
100
101/*
102 * Soft update function prototypes.
103 */
106void softdep_initialize __P((void));
107int softdep_mount __P((struct vnode *, struct mount *, struct fs *,
108 struct ucred *));
109int softdep_flushworklist __P((struct mount *, int *, struct thread *));
110int softdep_flushfiles __P((struct mount *, int, struct thread *));
111void softdep_update_inodeblock __P((struct inode *, struct buf *, int));
112void softdep_load_inodeblock __P((struct inode *));
113void softdep_freefile __P((struct vnode *, ino_t, int));
114int softdep_request_cleanup __P((struct fs *, struct vnode *));
115void softdep_setup_freeblocks __P((struct inode *, off_t));
116void softdep_setup_inomapdep __P((struct buf *, struct inode *, ino_t));
117void softdep_setup_blkmapdep __P((struct buf *, struct fs *, ufs_daddr_t));
118void softdep_setup_allocdirect __P((struct inode *, ufs_lbn_t, ufs_daddr_t,
119 ufs_daddr_t, long, long, struct buf *));
120void softdep_setup_allocindir_meta __P((struct buf *, struct inode *,
121 struct buf *, int, ufs_daddr_t));
122void softdep_setup_allocindir_page __P((struct inode *, ufs_lbn_t,
123 struct buf *, int, ufs_daddr_t, ufs_daddr_t, struct buf *));
124void softdep_fsync_mountdev __P((struct vnode *));
125int softdep_sync_metadata __P((struct vop_fsync_args *));
104void softdep_initialize(void);
105int softdep_mount(struct vnode *, struct mount *, struct fs *,
106 struct ucred *);
107int softdep_flushworklist(struct mount *, int *, struct thread *);
108int softdep_flushfiles(struct mount *, int, struct thread *);
109void softdep_update_inodeblock(struct inode *, struct buf *, int);
110void softdep_load_inodeblock(struct inode *);
111void softdep_freefile(struct vnode *, ino_t, int);
112int softdep_request_cleanup(struct fs *, struct vnode *);
113void softdep_setup_freeblocks(struct inode *, off_t);
114void softdep_setup_inomapdep(struct buf *, struct inode *, ino_t);
115void softdep_setup_blkmapdep(struct buf *, struct fs *, ufs_daddr_t);
116void softdep_setup_allocdirect(struct inode *, ufs_lbn_t, ufs_daddr_t,
117 ufs_daddr_t, long, long, struct buf *);
118void softdep_setup_allocindir_meta(struct buf *, struct inode *,
119 struct buf *, int, ufs_daddr_t);
120void softdep_setup_allocindir_page(struct inode *, ufs_lbn_t,
121 struct buf *, int, ufs_daddr_t, ufs_daddr_t, struct buf *);
122void softdep_fsync_mountdev(struct vnode *);
123int softdep_sync_metadata(struct vop_fsync_args *);
126/* XXX incorrectly moved to mount.h - should be indirect function */
127#if 0
124/* XXX incorrectly moved to mount.h - should be indirect function */
125#if 0
128int softdep_fsync __P((struct vnode *vp));
126int softdep_fsync(struct vnode *vp);
129#endif
130
131#endif /* !_UFS_FFS_EXTERN_H */
127#endif
128
129#endif /* !_UFS_FFS_EXTERN_H */