version 1.56, 2013/01/22 09:39:15 |
version 1.57, 2013/06/19 17:51:26 |
Line 117 ffs_balloc_ufs1(struct vnode *vp, off_t |
|
Line 117 ffs_balloc_ufs1(struct vnode *vp, off_t |
|
UVMHIST_FUNC("ffs_balloc"); UVMHIST_CALLED(ubchist); |
UVMHIST_FUNC("ffs_balloc"); UVMHIST_CALLED(ubchist); |
|
|
lbn = lblkno(fs, off); |
lbn = lblkno(fs, off); |
size = blkoff(fs, off) + size; |
size = ffs_blkoff(fs, off) + size; |
if (size > fs->fs_bsize) |
if (size > fs->fs_bsize) |
panic("ffs_balloc: blk too big"); |
panic("ffs_balloc: blk too big"); |
if (bpp != NULL) { |
if (bpp != NULL) { |
Line 137 ffs_balloc_ufs1(struct vnode *vp, off_t |
|
Line 137 ffs_balloc_ufs1(struct vnode *vp, off_t |
|
lastlbn = lblkno(fs, ip->i_size); |
lastlbn = lblkno(fs, ip->i_size); |
if (lastlbn < UFS_NDADDR && lastlbn < lbn) { |
if (lastlbn < UFS_NDADDR && lastlbn < lbn) { |
nb = lastlbn; |
nb = lastlbn; |
osize = blksize(fs, ip, nb); |
osize = ffs_blksize(fs, ip, nb); |
if (osize < fs->fs_bsize && osize > 0) { |
if (osize < fs->fs_bsize && osize > 0) { |
mutex_enter(&ump->um_lock); |
mutex_enter(&ump->um_lock); |
error = ffs_realloccg(ip, nb, |
error = ffs_realloccg(ip, nb, |
Line 190 ffs_balloc_ufs1(struct vnode *vp, off_t |
|
Line 190 ffs_balloc_ufs1(struct vnode *vp, off_t |
|
* Consider need to reallocate a fragment. |
* Consider need to reallocate a fragment. |
*/ |
*/ |
|
|
osize = fragroundup(fs, blkoff(fs, ip->i_size)); |
osize = fragroundup(fs, ffs_blkoff(fs, ip->i_size)); |
nsize = fragroundup(fs, size); |
nsize = fragroundup(fs, size); |
if (nsize <= osize) { |
if (nsize <= osize) { |
|
|
Line 534 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
Line 534 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
UVMHIST_FUNC("ffs_balloc"); UVMHIST_CALLED(ubchist); |
UVMHIST_FUNC("ffs_balloc"); UVMHIST_CALLED(ubchist); |
|
|
lbn = lblkno(fs, off); |
lbn = lblkno(fs, off); |
size = blkoff(fs, off) + size; |
size = ffs_blkoff(fs, off) + size; |
if (size > fs->fs_bsize) |
if (size > fs->fs_bsize) |
panic("ffs_balloc: blk too big"); |
panic("ffs_balloc: blk too big"); |
if (bpp != NULL) { |
if (bpp != NULL) { |
Line 560 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
Line 560 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
lastlbn = lblkno(fs, dp->di_extsize); |
lastlbn = lblkno(fs, dp->di_extsize); |
if (lastlbn < lbn) { |
if (lastlbn < lbn) { |
nb = lastlbn; |
nb = lastlbn; |
osize = sblksize(fs, dp->di_extsize, nb); |
osize = ffs_sblksize(fs, dp->di_extsize, nb); |
if (osize < fs->fs_bsize && osize > 0) { |
if (osize < fs->fs_bsize && osize > 0) { |
mutex_enter(&ump->um_lock); |
mutex_enter(&ump->um_lock); |
error = ffs_realloccg(ip, -1 - nb, |
error = ffs_realloccg(ip, -1 - nb, |
Line 604 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
Line 604 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
/* |
/* |
* Consider need to reallocate a fragment. |
* Consider need to reallocate a fragment. |
*/ |
*/ |
osize = fragroundup(fs, blkoff(fs, dp->di_extsize)); |
osize = fragroundup(fs, ffs_blkoff(fs, dp->di_extsize)); |
nsize = fragroundup(fs, size); |
nsize = fragroundup(fs, size); |
if (nsize <= osize) { |
if (nsize <= osize) { |
error = bread(vp, -1 - lbn, osize, |
error = bread(vp, -1 - lbn, osize, |
Line 660 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
Line 660 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
lastlbn = lblkno(fs, ip->i_size); |
lastlbn = lblkno(fs, ip->i_size); |
if (lastlbn < UFS_NDADDR && lastlbn < lbn) { |
if (lastlbn < UFS_NDADDR && lastlbn < lbn) { |
nb = lastlbn; |
nb = lastlbn; |
osize = blksize(fs, ip, nb); |
osize = ffs_blksize(fs, ip, nb); |
if (osize < fs->fs_bsize && osize > 0) { |
if (osize < fs->fs_bsize && osize > 0) { |
mutex_enter(&ump->um_lock); |
mutex_enter(&ump->um_lock); |
error = ffs_realloccg(ip, nb, |
error = ffs_realloccg(ip, nb, |
Line 713 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
Line 713 ffs_balloc_ufs2(struct vnode *vp, off_t |
|
* Consider need to reallocate a fragment. |
* Consider need to reallocate a fragment. |
*/ |
*/ |
|
|
osize = fragroundup(fs, blkoff(fs, ip->i_size)); |
osize = fragroundup(fs, ffs_blkoff(fs, ip->i_size)); |
nsize = fragroundup(fs, size); |
nsize = fragroundup(fs, size); |
if (nsize <= osize) { |
if (nsize <= osize) { |
|
|