diff options
author | Alexander Ivanov <alexander.ivanov@virtuozzo.com> | 2023-04-24 11:31:43 +0200 |
---|---|---|
committer | Hanna Czenczek <hreitz@redhat.com> | 2023-06-05 13:13:55 +0200 |
commit | 9616f7a6c2eaed165e26227a4c84c24bcc2b3473 (patch) | |
tree | 6f5ce73f95c808701b2f4dfa974aa09ba1d9b0b2 /block | |
parent | 6d416e56a79b91e96bdb2d2a186da647bd737d01 (diff) |
parallels: Fix statistics calculation
Exclude out-of-image clusters from allocated and fragmented clusters
calculation.
Signed-off-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>
Message-Id: <20230424093147.197643-9-alexander.ivanov@virtuozzo.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/parallels.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/block/parallels.c b/block/parallels.c index 7f0f72e879..fd1e2860d0 100644 --- a/block/parallels.c +++ b/block/parallels.c @@ -512,7 +512,11 @@ parallels_co_check(BlockDriverState *bs, BdrvCheckResult *res, prev_off = 0; for (i = 0; i < s->bat_size; i++) { int64_t off = bat2sect(s, i) << BDRV_SECTOR_BITS; - if (off == 0) { + /* + * If BDRV_FIX_ERRORS is not set, out-of-image BAT entries were not + * fixed. Skip not allocated and out-of-image BAT entries. + */ + if (off == 0 || off + s->cluster_size > res->image_end_offset) { prev_off = 0; continue; } |