Commit f0947e5c authored by Jaegeuk Kim's avatar Jaegeuk Kim

f2fs: fix i_name during f2fs_sync_file

As similar as the i_pino fix, i_name also should be fixed when i_nlink is 1.

The errorneous scenario is like this.

1. touch test1
2. link test1 test2
3. unlink test2
4. fsync test1

After this, i_name should be test1.

CC: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: default avatarJaegeuk Kim <jaegeuk.kim@samsung.com>
parent 1cd14caf
......@@ -112,11 +112,13 @@ static int get_parent_ino(struct inode *inode, nid_t *pino)
if (!dentry)
return 0;
inode = igrab(dentry->d_parent->d_inode);
dput(dentry);
if (update_dent_inode(inode, &dentry->d_name)) {
dput(dentry);
return 0;
}
*pino = inode->i_ino;
iput(inode);
*pino = parent_ino(dentry);
dput(dentry);
return 1;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment