summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/segment.c
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2014-12-09 15:08:59 +0100
committerJaegeuk Kim <jaegeuk@kernel.org>2015-01-10 02:02:22 +0100
commit1e84371ffeef451e8532e0cd04c2fe59ff10c514 (patch)
tree83cce972cf37a185f90c4231213c69f84881511f /fs/f2fs/segment.c
parentf2fs: don't need to call lock_op and lock_page for abort (diff)
downloadlinux-1e84371ffeef451e8532e0cd04c2fe59ff10c514.tar.xz
linux-1e84371ffeef451e8532e0cd04c2fe59ff10c514.zip
f2fs: change atomic and volatile write policies
This patch adds two new ioctls to release inmemory pages grabbed by atomic writes. o f2fs_ioc_abort_volatile_write - If transaction was failed, all the grabbed pages and data should be written. o f2fs_ioc_release_volatile_write - This is to enhance the performance of PERSIST mode in sqlite. In order to avoid huge memory consumption which causes OOM, this patch changes volatile writes to use normal dirty pages, instead blocked flushing to the disk as long as system does not suffer from memory pressure. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to '')
-rw-r--r--fs/f2fs/segment.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
index 3ce86c533604..de9c0700c88e 100644
--- a/fs/f2fs/segment.c
+++ b/fs/f2fs/segment.c
@@ -230,7 +230,7 @@ void commit_inmem_pages(struct inode *inode, bool abort)
bool submit_bio = false;
struct f2fs_io_info fio = {
.type = DATA,
- .rw = WRITE_SYNC,
+ .rw = WRITE_SYNC | REQ_PRIO,
};
/*