f2fs: clear nlink if fail to add_link
authorChao Yu <yuchao0@huawei.com>
Tue, 11 Oct 2016 14:56:59 +0000 (22:56 +0800)
committerJaegeuk Kim <jaegeuk@google.com>
Mon, 25 Sep 2017 22:05:11 +0000 (15:05 -0700)
commit8db338877d72a24743a3808d4bc774f74a058f8f
tree6f73480fd543eed4e87504d5b1b8fc61b83f047d
parentfbeee49e0605a0c723bd0d870d59175a764377c6
f2fs: clear nlink if fail to add_link

commit a11b9f65eae766b17ec3451a6a1766f0a9d1dbff upstream.

We don't need to keep incomplete created inode in cache, so if we fail to
add link into directory during new inode creation, it's better to set
nlink of inode to zero, then we can evict inode immediately. Otherwise
release of nid belong to inode will be delayed until inode cache is being
shrunk, it may cause a seemingly endless loop while allocating free nids
in time of testing generic/269 case of fstest suit.

Signed-off-by: Chao Yu <yuchao0@huawei.com>
[Jaegeuk Kim: add update_inode_page to fix kernel panic]
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/inode.c