summaryrefslogtreecommitdiff
path: root/linux/blkdev.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2017-08-23 16:30:13 -0600
committerKent Overstreet <kent.overstreet@gmail.com>2017-08-23 16:30:25 -0600
commitc7950838b2337c5eff691acc4cf6b72e3f960afb (patch)
treeea81f8917dbd9ffaef4d9b109ea4e4498eec3920 /linux/blkdev.c
parent8aaf7d913a382291f2770e6ce72a8919d5441bef (diff)
handle REQ_OP_FLUSH
Diffstat (limited to 'linux/blkdev.c')
-rw-r--r--linux/blkdev.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/linux/blkdev.c b/linux/blkdev.c
index 2e03889d..ea7db40b 100644
--- a/linux/blkdev.c
+++ b/linux/blkdev.c
@@ -79,6 +79,12 @@ void generic_make_request(struct bio *bio)
if (ret != 1)
die("io_submit err: %s", strerror(-ret));
break;
+ case REQ_OP_FLUSH:
+ ret = fsync(bio->bi_bdev->bd_fd);
+ if (ret)
+ die("fsync error: %m");
+ bio_endio(bio);
+ break;
default:
BUG();
}