OSDN Git Service

f2fs: handle newly created page when revoking inmem pages
authorDaeho Jeong <daeho.jeong@samsung.com>
Wed, 10 Jan 2018 07:49:10 +0000 (16:49 +0900)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 8 Feb 2018 02:05:52 +0000 (18:05 -0800)
commitd49132d45cb07dc77904bf9b6501df2dd77b251b
treee4f97445c48a5ec3d549acf0ecceeec190c4892d
parent2ce6b9d8167e2785ea01011bc60c2f95b6313dea
f2fs: handle newly created page when revoking inmem pages

When committing inmem pages is successful, we revoke already committed
blocks in __revoke_inmem_pages() and finally replace the committed
ones with the old blocks using f2fs_replace_block(). However, if
the committed block was newly created one, the address of the old
block is NEW_ADDR and __f2fs_replace_block() cannot handle NEW_ADDR
as new_blkaddr properly and a kernel panic occurrs.

Signed-off-by: Daeho Jeong <daeho.jeong@samsung.com>
Tested-by: Shu Tan <shu.tan@samsung.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/segment.c