aboutsummaryrefslogtreecommitdiff
path: root/lib/libufs/libufs.h
diff options
context:
space:
mode:
authorJeff Roberson <jeff@FreeBSD.org>2010-04-24 07:05:35 +0000
committerJeff Roberson <jeff@FreeBSD.org>2010-04-24 07:05:35 +0000
commit113db2dddb719510679d71ff41679afe30c8b3d1 (patch)
treee551aa2ab43f7f11c3646b241ebf3f582988d375 /lib/libufs/libufs.h
parent07b9cc2f468471a723504ac789201a84f6dcd38a (diff)
downloadsrc-113db2dddb719510679d71ff41679afe30c8b3d1.tar.gz
src-113db2dddb719510679d71ff41679afe30c8b3d1.zip
- Merge soft-updates journaling from projects/suj/head into head. This
brings in support for an optional intent log which eliminates the need for background fsck on unclean shutdown. Sponsored by: iXsystems, Yahoo!, and Juniper. With help from: McKusick and Peter Holm
Notes
Notes: svn path=/head/; revision=207141
Diffstat (limited to 'lib/libufs/libufs.h')
-rw-r--r--lib/libufs/libufs.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/libufs/libufs.h b/lib/libufs/libufs.h
index 42a64f76e2b0..c3541a0c8e6b 100644
--- a/lib/libufs/libufs.h
+++ b/lib/libufs/libufs.h
@@ -71,6 +71,7 @@ struct uufsd {
int d_fd; /* raw device file descriptor */
long d_bsize; /* device bsize */
ufs2_daddr_t d_sblock; /* superblock location */
+ struct csum *d_sbcsum; /* Superblock summary info */
caddr_t d_inoblock; /* inode block */
ino_t d_inomin; /* low inode */
ino_t d_inomax; /* high inode */
@@ -109,14 +110,19 @@ int berase(struct uufsd *, ufs2_daddr_t, ufs2_daddr_t);
/*
* cgroup.c
*/
+ufs2_daddr_t cgballoc(struct uufsd *);
+int cgbfree(struct uufsd *, ufs2_daddr_t, long);
+ino_t cgialloc(struct uufsd *);
int cgread(struct uufsd *);
int cgread1(struct uufsd *, int);
+int cgwrite(struct uufsd *);
int cgwrite1(struct uufsd *, int);
/*
* inode.c
*/
int getino(struct uufsd *, void **, ino_t, int *);
+int putino(struct uufsd *);
/*
* sblock.c
@@ -132,6 +138,16 @@ int ufs_disk_fillout(struct uufsd *, const char *);
int ufs_disk_fillout_blank(struct uufsd *, const char *);
int ufs_disk_write(struct uufsd *);
+/*
+ * ffs_subr.c
+ */
+void ffs_clrblock(struct fs *, u_char *, ufs1_daddr_t);
+void ffs_clusteracct(struct fs *, struct cg *, ufs1_daddr_t, int);
+void ffs_fragacct(struct fs *, int, int32_t [], int);
+int ffs_isblock(struct fs *, u_char *, ufs1_daddr_t);
+int ffs_isfreeblock(struct fs *, u_char *, ufs1_daddr_t);
+void ffs_setblock(struct fs *, u_char *, ufs1_daddr_t);
+
__END_DECLS
#endif /* __LIBUFS_H__ */