f2fs: Create COW inode from parent dentry for atomic write
authorYeongjin Gil <youngjin.gil@samsung.com>
Tue, 13 Aug 2024 07:32:44 +0000 (16:32 +0900)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 21 Aug 2024 00:56:27 +0000 (00:56 +0000)
commit8c1b787938fd86bab27a1492fa887408c75fec2b
treef3476141dc69e05fca1032a13c1d1c55b70254a2
parent4f5a100f87f32cb65d4bb1ad282a08c92f6f591e
f2fs: Create COW inode from parent dentry for atomic write

The i_pino in f2fs_inode_info has the previous parent's i_ino when inode
was renamed, which may cause f2fs_ioc_start_atomic_write to fail.
If file_wrong_pino is true and i_nlink is 1, then to find a valid pino,
we should refer to the dentry from inode.

To resolve this issue, let's get parent inode using parent dentry
directly.

Fixes: 3db1de0e582c ("f2fs: change the current atomic write way")
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Reviewed-by: Sunmin Jeong <s_min.jeong@samsung.com>
Signed-off-by: Yeongjin Gil <youngjin.gil@samsung.com>
Reviewed-by: Daeho Jeong <daehojeong@google.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/file.c