aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/aops.c
diff options
context:
space:
mode:
authorMark Fasheh <mark.fasheh@oracle.com>2007-03-22 19:53:23 -0400
committerMark Fasheh <mark.fasheh@oracle.com>2007-04-26 18:07:40 -0400
commit8110b073a9135acf0a71bccfc20c0d1023f179c6 (patch)
treeb668738e25648f3fcfd7b1063ab8d4948cebc668 /fs/ocfs2/aops.c
parent4f902c37727bbedbc0508a1477874c58ddcc9af8 (diff)
ocfs2: Fix up i_blocks calculation to know about holes
Older file systems which didn't support holes did a dumb calculation of i_blocks based on i_size. This is no longer accurate, so fix things up to take actual allocation into account. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Diffstat (limited to 'fs/ocfs2/aops.c')
-rw-r--r--fs/ocfs2/aops.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index ff71e0b430cd..b74971e19d54 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -1271,7 +1271,7 @@ ssize_t ocfs2_buffered_write_cluster(struct file *file, loff_t pos,
1271 i_size_write(inode, pos); 1271 i_size_write(inode, pos);
1272 mark_inode_dirty(inode); 1272 mark_inode_dirty(inode);
1273 } 1273 }
1274 inode->i_blocks = ocfs2_align_bytes_to_sectors((u64)(i_size_read(inode))); 1274 inode->i_blocks = ocfs2_inode_sector_count(inode);
1275 di->i_size = cpu_to_le64((u64)i_size_read(inode)); 1275 di->i_size = cpu_to_le64((u64)i_size_read(inode));
1276 inode->i_mtime = inode->i_ctime = CURRENT_TIME; 1276 inode->i_mtime = inode->i_ctime = CURRENT_TIME;
1277 di->i_mtime = di->i_ctime = cpu_to_le64(inode->i_mtime.tv_sec); 1277 di->i_mtime = di->i_ctime = cpu_to_le64(inode->i_mtime.tv_sec);