]> git.baikalelectronics.ru Git - kernel.git/commit
f2fs: fix to wake up all sleeping flusher
authorChao Yu <yuchao0@huawei.com>
Thu, 31 Aug 2017 10:56:06 +0000 (18:56 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Tue, 5 Sep 2017 17:50:23 +0000 (10:50 -0700)
commit6a5a2c9138f0ebd4e10507cf7e971c15d52f7383
treea9cca98a6ebe0bd3b764cc91f2ab37ca41675203
parent3c9227208a482aa529c8075991c205ed1a6d8aea
f2fs: fix to wake up all sleeping flusher

In scenario of remount_ro vs flush, after flush_thread exits in
->remount_fs, flusher will only clean up golbal issue_list, but
without waking up flushers waiting on that list, result in hang
related user threads.

In order to fix this issue, this patch enables the flusher to
take charge of issue_flush thread: executes merged flush command,
and wake up all sleeping flushers.

Fixes: cb89e71ed826 ("f2fs: fix to access nullified flush_cmd_control pointer")
Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/segment.c