Lines Matching refs:newsize
1370 static int gfs2_journaled_truncate(struct inode *inode, u64 oldsize, u64 newsize) in gfs2_journaled_truncate() argument
1377 while (oldsize != newsize) { in gfs2_journaled_truncate()
1381 chunk = oldsize - newsize; in gfs2_journaled_truncate()
1405 static int trunc_start(struct inode *inode, u64 newsize) in trunc_start() argument
1428 gfs2_buffer_clear_tail(dibh, sizeof(struct gfs2_dinode) + newsize); in trunc_start()
1431 unsigned int offs = newsize & (blocksize - 1); in trunc_start()
1433 error = gfs2_block_zero_range(inode, newsize, in trunc_start()
1441 i_size_write(inode, newsize); in trunc_start()
1446 error = gfs2_journaled_truncate(inode, oldsize, newsize); in trunc_start()
1448 truncate_pagecache(inode, newsize); in trunc_start()
2059 static int do_shrink(struct inode *inode, u64 newsize) in do_shrink() argument
2064 error = trunc_start(inode, newsize); in do_shrink()
2070 error = punch_hole(ip, newsize, 0); in do_shrink()
2172 int gfs2_setattr_size(struct inode *inode, u64 newsize) in gfs2_setattr_size() argument
2179 ret = inode_newsize_ok(inode, newsize); in gfs2_setattr_size()
2189 if (newsize >= inode->i_size) { in gfs2_setattr_size()
2190 ret = do_grow(inode, newsize); in gfs2_setattr_size()
2194 ret = do_shrink(inode, newsize); in gfs2_setattr_size()