]> git.baikalelectronics.ru Git - kernel.git/commit
f2fs: fix to let checkpoint guarantee atomic page persistence
authorChao Yu <yuchao0@huawei.com>
Tue, 8 May 2018 06:06:03 +0000 (14:06 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 31 May 2018 18:31:50 +0000 (11:31 -0700)
commita578ea89ed485ed31ab02959f7b5b0e5ad900e3e
tree8701ab9293bfd4bca226c89ce93306c2b015173e
parent595263d6961f421357b92ffad1f18e607a0d4faa
f2fs: fix to let checkpoint guarantee atomic page persistence

1. thread A: commit_inmem_pages submit data into block layer, but
haven't waited it writeback.
2. thread A: commit_inmem_pages update related node.
3. thread B: do checkpoint, flush all nodes to disk.
4. SPOR

Then, atomic file becomes corrupted since nodes is flushed before data.

This patch fixes to treat atomic page as checkpoint guaranteed one,
then in checkpoint, we can make sure all atomic page can be writebacked
with metadata of atomic file.

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/data.c