diff options
| author | Jaegeuk Kim <jaegeuk@kernel.org> | 2017-07-24 19:46:29 -0700 |
|---|---|---|
| committer | Mister Oyster <oysterized@gmail.com> | 2017-10-04 15:22:42 +0200 |
| commit | cb13b28686e7f1b21815e7ba82bec95583a37e30 (patch) | |
| tree | 03ae0c38331be7ae813d6aa5f56907a2993a66b4 /kernel/workqueue.c | |
| parent | 0a74e3cc23f83c9b3a62d1c98879b5b5d69d915f (diff) | |
f2fs: don't give partially written atomic data from process crash
This patch resolves the below scenario.
== Process 1 == == Process 2 ==
open(w) open(rw)
begin
write(new_#1)
process_crash
f_op->flush
locks_remove_posix
f_op>release
read (new_#1)
In order to avoid corrupted database caused by new_#1, we must do roll-back
at process_crash time. In order to check that, this patch keeps task which
triggers transaction begin, and does roll-back in f_op->flush before removing
file locks.
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'kernel/workqueue.c')
0 files changed, 0 insertions, 0 deletions
