summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTao Ma <tao.ma@oracle.com>2010-03-10 02:56:52 +0100
committerJoel Becker <joel.becker@oracle.com>2010-03-17 20:28:00 +0100
commit6527f8f848ec84b9daf1cb07601266126b8507ab (patch)
treefd7bbdfb3a63921e78f22480f60b5bc037e37d16
parentocfs2: Change bg_chain check for ocfs2_validate_gd_parent. (diff)
downloadlinux-6527f8f848ec84b9daf1cb07601266126b8507ab.tar.xz
linux-6527f8f848ec84b9daf1cb07601266126b8507ab.zip
ocfs2: Update i_blocks in reflink operations.
In reflink, we need to upate i_blocks for the target inode. Reported-by: Jie Liu <jeff.liu@oracle.com> Signed-off-by: Tao Ma <tao.ma@oracle.com> Signed-off-by: Joel Becker <joel.becker@oracle.com>
-rw-r--r--fs/ocfs2/refcounttree.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ocfs2/refcounttree.c b/fs/ocfs2/refcounttree.c
index 9e96921dffda..29405f2ff616 100644
--- a/fs/ocfs2/refcounttree.c
+++ b/fs/ocfs2/refcounttree.c
@@ -4075,6 +4075,7 @@ static int ocfs2_complete_reflink(struct inode *s_inode,
OCFS2_I(t_inode)->ip_dyn_features = OCFS2_I(s_inode)->ip_dyn_features;
spin_unlock(&OCFS2_I(t_inode)->ip_lock);
i_size_write(t_inode, size);
+ t_inode->i_blocks = s_inode->i_blocks;
di->i_xattr_inline_size = s_di->i_xattr_inline_size;
di->i_clusters = s_di->i_clusters;