f2fs: flush symlink path to avoid broken symlink after POR
authorJaegeuk Kim <jaegeuk@kernel.org>
Wed, 15 Apr 2015 20:37:53 +0000 (13:37 -0700)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 16 Apr 2015 16:45:35 +0000 (09:45 -0700)
commitd0cae97cb600d84a7e00df6f83ab3b2f60d8d7f7
tree5b57f4664b0f18b102cbf92e9ca05b0dc8d5e3e3
parent9df47ba759e40ea2facd0601d4888abb37ed9658
f2fs: flush symlink path to avoid broken symlink after POR

This patch tries to avoid broken symlink case after POR in best effort.
This results in performance regression.
But, if f2fs has inline_data and the target path is under 3KB-sized long,
the page would be stored in its inode_block, so that there would be no
performance regression.

Note that, if user wants to keep this file atomically, it needs to trigger
dir->fsync.
And, there is still a hole to produce broken symlink.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/namei.c