diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2017-03-16 14:51:41 -0800 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2017-03-16 14:51:41 -0800 |
commit | bb1941de5378a7b8122d3575dcbc7d0aeb6326f0 (patch) | |
tree | fb0920334591a34e2673c3cfc63d07ac20ba0b92 /libbcache/fs-io.c | |
parent | ac296ad4dcd32a4e7618716782fc3f2b69d03a74 (diff) |
update bcache sources
Diffstat (limited to 'libbcache/fs-io.c')
-rw-r--r-- | libbcache/fs-io.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libbcache/fs-io.c b/libbcache/fs-io.c index 0aef0141..afc8c208 100644 --- a/libbcache/fs-io.c +++ b/libbcache/fs-io.c @@ -1613,10 +1613,16 @@ ssize_t bch_direct_IO(struct kiocb *req, struct iov_iter *iter) struct file *file = req->ki_filp; struct inode *inode = file->f_inode; struct bch_fs *c = inode->i_sb->s_fs_info; + struct blk_plug plug; + ssize_t ret; - return ((iov_iter_rw(iter) == WRITE) + blk_start_plug(&plug); + ret = ((iov_iter_rw(iter) == WRITE) ? bch_direct_IO_write : bch_direct_IO_read)(c, req, file, inode, iter, req->ki_pos); + blk_finish_plug(&plug); + + return ret; } static ssize_t |