Signed-off-by: Benoit Canet <ben...@irqsave.net> --- block/quorum.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/block/quorum.c b/block/quorum.c index de58ab8..9da0432 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -107,6 +107,17 @@ clean_exit: return ret; } +static void quorum_close(BlockDriverState *bs) +{ + BDRVQuorumState *s = bs->opaque; + int i; + + /* Ensure writes reach stable storage */ + for (i = 0; i <= 2; i++) { + bdrv_flush(s->bs[i]); + } +} + static BlockDriver bdrv_quorum = { .format_name = "quorum", .protocol_name = "quorum", @@ -114,6 +125,7 @@ static BlockDriver bdrv_quorum = { .instance_size = sizeof(BDRVQuorumState), .bdrv_file_open = quorum_open, + .bdrv_close = quorum_close, }; static void bdrv_quorum_init(void) -- 1.7.9.5