From: Darrick J. Wong Date: Wed, 31 Aug 2011 16:00:51 +0000 (-0400) Subject: ext4: ext4_mkdir should dirty dir_block with newly created directory inode X-Git-Tag: v3.2-rc1~85^2~93 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f9287c1f2d329f4d78a3bbc9cf0db0ebae6f146a;p=profile%2Fivi%2Fkernel-x86-ivi.git ext4: ext4_mkdir should dirty dir_block with newly created directory inode ext4_mkdir calls ext4_handle_dirty_metadata with dir_block and the inode "dir". Unfortunately, dir_block belongs to the newly created directory (which is "inode"), not the parent directory (which is "dir"). Fix the incorrect association. Signed-off-by: Darrick J. Wong Signed-off-by: "Theodore Ts'o" Cc: stable@kernel.org --- diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index 09f930b..f0abe43 100644 --- a/fs/ext4/namei.c +++ b/fs/ext4/namei.c @@ -1862,7 +1862,7 @@ retry: ext4_set_de_type(dir->i_sb, de, S_IFDIR); inode->i_nlink = 2; BUFFER_TRACE(dir_block, "call ext4_handle_dirty_metadata"); - err = ext4_handle_dirty_metadata(handle, dir, dir_block); + err = ext4_handle_dirty_metadata(handle, inode, dir_block); if (err) goto out_clear_inode; err = ext4_mark_inode_dirty(handle, inode);