diff options
author | rgrimes <rgrimes@FreeBSD.org> | 1994-05-25 09:21:21 +0000 |
---|---|---|
committer | rgrimes <rgrimes@FreeBSD.org> | 1994-05-25 09:21:21 +0000 |
commit | 2469c867a164210ce96143517059f21db7f1fd17 (patch) | |
tree | 9179427ac860211c445df663fd2b86267366bfba /sys/ufs/ffs/ffs_alloc.c | |
parent | cb0aba89af15a48e2655e898a503946ac4cb42ae (diff) | |
download | FreeBSD-src-2469c867a164210ce96143517059f21db7f1fd17.zip FreeBSD-src-2469c867a164210ce96143517059f21db7f1fd17.tar.gz |
The big 4.4BSD Lite to FreeBSD 2.0.0 (Development) patch.
Reviewed by: Rodney W. Grimes
Submitted by: John Dyson and David Greenman
Diffstat (limited to 'sys/ufs/ffs/ffs_alloc.c')
-rw-r--r-- | sys/ufs/ffs/ffs_alloc.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/ufs/ffs/ffs_alloc.c b/sys/ufs/ffs/ffs_alloc.c index cdd2e4b..15e8718 100644 --- a/sys/ufs/ffs/ffs_alloc.c +++ b/sys/ufs/ffs/ffs_alloc.c @@ -63,6 +63,8 @@ static u_long ffs_hashalloc static ino_t ffs_nodealloccg __P((struct inode *, int, daddr_t, int)); static daddr_t ffs_mapsearch __P((struct fs *, struct cg *, daddr_t, int)); +void ffs_clusteracct __P((struct fs *, struct cg *, daddr_t, int)); + /* * Allocate a block in the file system. * @@ -82,6 +84,7 @@ static daddr_t ffs_mapsearch __P((struct fs *, struct cg *, daddr_t, int)); * 2) quadradically rehash into other cylinder groups, until an * available block is located. */ +int ffs_alloc(ip, lbn, bpref, size, cred, bnp) register struct inode *ip; daddr_t lbn, bpref; @@ -146,6 +149,7 @@ nospace: * the original block. Failing that, the regular block allocator is * invoked to get an appropriate block. */ +int ffs_realloccg(ip, lbprev, bpref, osize, nsize, cred, bpp) register struct inode *ip; daddr_t lbprev; @@ -304,7 +308,9 @@ nospace: */ #include <sys/sysctl.h> int doasyncfree = 1; +#ifdef DEBUG struct ctldebug debug14 = { "doasyncfree", &doasyncfree }; +#endif int ffs_reallocblks(ap) struct vop_reallocblks_args /* { @@ -316,7 +322,7 @@ ffs_reallocblks(ap) struct inode *ip; struct vnode *vp; struct buf *sbp, *ebp; - daddr_t *bap, *sbap, *ebap; + daddr_t *bap, *sbap, *ebap = 0; struct cluster_save *buflist; daddr_t start_lbn, end_lbn, soff, eoff, newblk, blkno; struct indir start_ap[NIADDR + 1], end_ap[NIADDR + 1], *idp; @@ -466,6 +472,7 @@ fail: * 2) quadradically rehash into other cylinder groups, until an * available inode is located. */ +int ffs_valloc(ap) struct vop_valloc_args /* { struct vnode *a_pvp; @@ -1150,6 +1157,7 @@ gotit: * free map. If a fragment is deallocated, a possible * block reassembly is checked. */ +void ffs_blkfree(ip, bno, size) register struct inode *ip; daddr_t bno; @@ -1380,6 +1388,7 @@ ffs_mapsearch(fs, cgp, bpref, allocsiz) * * Cnt == 1 means free; cnt == -1 means allocating. */ +void ffs_clusteracct(fs, cgp, blkno, cnt) struct fs *fs; struct cg *cgp; |