GFS2: New truncate sequence

This updates GFS2's truncate code to use the new truncate
sequence correctly. This is a stepping stone to being
able to remove ip->i_disksize in favour of using i_size
everywhere now that the two sizes are always identical.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Cc: Nick Piggin <npiggin@suse.de>
Cc: Christoph Hellwig <hch@lst.de>
This commit is contained in:
Steven Whitehouse
2010-08-11 09:37:53 +01:00
parent 2422084a94
commit ff8f33c8b3
4 changed files with 137 additions and 170 deletions

View File

@@ -696,13 +696,11 @@ out:
page_cache_release(page);
/*
* XXX(truncate): the call below should probably be replaced with
* a call to the gfs2-specific truncate blocks helper to actually
* release disk blocks..
*/
gfs2_trans_end(sdp);
if (pos + len > ip->i_inode.i_size)
truncate_setsize(&ip->i_inode, ip->i_inode.i_size);
gfs2_trim_blocks(&ip->i_inode);
goto out_trans_fail;
out_endtrans:
gfs2_trans_end(sdp);
out_trans_fail: