summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2018-05-09 03:33:55 +0200
committerJens Axboe <axboe@kernel.dk>2018-05-14 21:16:11 +0200
commit6e6e811d747bfe40228dc72309450803ef74d380 (patch)
treea25834cab4b4cbeb1d7b8c16c6cf907ffd93c49d /block
parentblock: Split out bio_list_copy_data() (diff)
downloadlinux-6e6e811d747bfe40228dc72309450803ef74d380.tar.xz
linux-6e6e811d747bfe40228dc72309450803ef74d380.zip
block: Add missing flush_dcache_page() call
Since a bio can point to userspace pages (e.g. direct IO), this is generally necessary. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
-rw-r--r--block/bio.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/block/bio.c b/block/bio.c
index 858f56f3edcb..2112ad01b52c 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -994,6 +994,8 @@ void bio_copy_data_iter(struct bio *dst, struct bvec_iter *dst_iter,
kunmap_atomic(dst_p);
kunmap_atomic(src_p);
+ flush_dcache_page(dst_bv.bv_page);
+
bio_advance_iter(src, src_iter, bytes);
bio_advance_iter(dst, dst_iter, bytes);
}