]> git.baikalelectronics.ru Git - kernel.git/commit
reiserfs: Make flush bios explicitely sync
authorJan Kara <jack@suse.cz>
Tue, 2 May 2017 11:16:18 +0000 (13:16 +0200)
committerJan Kara <jack@suse.cz>
Wed, 24 May 2017 11:35:20 +0000 (13:35 +0200)
commitb7e593e09a90268d6d642093b782eeeb2e5754f8
tree646b9b91ec05b4b6e411bf2b428ea9fe2c371d03
parent341563546b0ef38d129f78c81c013e8443c337f7
reiserfs: Make flush bios explicitely sync

Commit 8eecb540590c "block: treat REQ_FUA and REQ_PREFLUSH as
synchronous" removed REQ_SYNC flag from WRITE_{FUA|PREFLUSH|...}
definitions.  generic_make_request_checks() however strips REQ_FUA and
REQ_PREFLUSH flags from a bio when the storage doesn't report volatile
write cache and thus write effectively becomes asynchronous which can
lead to performance regressions

Fix the problem by making sure all bios which are synchronous are
properly marked with REQ_SYNC.

Fixes: 8eecb540590c70d97c0366ea02a6a436c87fa8ef
CC: reiserfs-devel@vger.kernel.org
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara <jack@suse.cz>
fs/reiserfs/journal.c