From: Olga Krishtal <okrish...@virtuozzo.com>

Signed-off-by: Olga Krishtal <okrish...@virtuozzo.com>
Signed-off-by: Denis V. Lunev <d...@openvz.org>
CC: Kevin Wolf <kw...@redhat.com>
CC: Max Reitz <mre...@redhat.com>
CC: Eric Blake <ebl...@redhat.com>
CC: Fam Zheng <f...@redhat.com>
---
 block/parallels.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/block/parallels.c b/block/parallels.c
index e4a56a5..618b609 100644
--- a/block/parallels.c
+++ b/block/parallels.c
@@ -359,6 +359,10 @@ static coroutine_fn int 
parallels_co_readv(BlockDriverState *bs,
     return ret;
 }
 
+static bool parallels_is_opened_unclean(BlockDriverState *bs)
+{
+    return ((BDRVParallelsState *)(bs->opaque))->header_unclean;
+}
 
 static int parallels_check(BlockDriverState *bs, BdrvCheckResult *res,
                            BdrvCheckMode fix)
@@ -376,7 +380,7 @@ static int parallels_check(BlockDriverState *bs, 
BdrvCheckResult *res,
         return size;
     }
 
-    if (s->header_unclean) {
+    if (parallels_is_opened_unclean(bs)) {
         fprintf(stderr, "%s image was not closed correctly\n",
                 fix & BDRV_FIX_ERRORS ? "Repairing" : "ERROR");
         res->corruptions++;
@@ -743,6 +747,7 @@ static BlockDriver bdrv_parallels = {
     .bdrv_close                = parallels_close,
     .bdrv_co_get_block_status = parallels_co_get_block_status,
     .bdrv_has_zero_init       = bdrv_has_zero_init_1,
+    .bdrv_is_opened_unclean        = parallels_is_opened_unclean,
     .bdrv_co_flush_to_os      = parallels_co_flush_to_os,
     .bdrv_co_readv  = parallels_co_readv,
     .bdrv_co_writev = parallels_co_writev,
-- 
2.1.4


Reply via email to