Re: [PATCH v4 15/21] parallels: Reverse a conditional in parallels_check_leak() to reduce indents
On 12/28/23 11:12, Alexander Ivanov wrote: Let the function return a success code if a file size is not bigger than image_end_offset. Thus we can decrease indents in the next code block. Signed-off-by: Alexander Ivanov --- block/parallels.c | 72 +++ 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/block/parallels.c b/block/parallels.c index d5d87984cf..fb7bc5e555 100644 --- a/block/parallels.c +++ b/block/parallels.c @@ -773,7 +773,7 @@ parallels_check_leak(BlockDriverState *bs, BdrvCheckResult *res, BdrvCheckMode fix, bool explicit) { BDRVParallelsState *s = bs->opaque; -int64_t size; +int64_t size, count; int ret; size = bdrv_co_getlength(bs->file->bs); @@ -781,43 +781,43 @@ parallels_check_leak(BlockDriverState *bs, BdrvCheckResult *res, res->check_errors++; return size; } +if (size <= res->image_end_offset) { +return 0; +} + +count = DIV_ROUND_UP(size - res->image_end_offset, s->cluster_size); +if (explicit) { +fprintf(stderr, +"%s space leaked at the end of the image %" PRId64 "\n", +fix & BDRV_FIX_LEAKS ? "Repairing" : "ERROR", +size - res->image_end_offset); +res->leaks += count; +} +if (fix & BDRV_FIX_LEAKS) { +Error *local_err = NULL; + +/* + * In order to really repair the image, we must shrink it. + * That means we have to pass exact=true. + */ +ret = bdrv_co_truncate(bs->file, res->image_end_offset, true, + PREALLOC_MODE_OFF, 0, _err); +if (ret < 0) { +error_report_err(local_err); +res->check_errors++; +return ret; +} +s->data_end = res->image_end_offset >> BDRV_SECTOR_BITS; + +parallels_free_used_bitmap(bs); +ret = parallels_fill_used_bitmap(bs); +if (ret == -ENOMEM) { +res->check_errors++; +return ret; +} -if (size > res->image_end_offset) { -int64_t count; -count = DIV_ROUND_UP(size - res->image_end_offset, s->cluster_size); if (explicit) { -fprintf(stderr, -"%s space leaked at the end of the image %" PRId64 "\n", -fix & BDRV_FIX_LEAKS ? "Repairing" : "ERROR", -size - res->image_end_offset); -res->leaks += count; -} -if (fix & BDRV_FIX_LEAKS) { -Error *local_err = NULL; - -/* - * In order to really repair the image, we must shrink it. - * That means we have to pass exact=true. - */ -ret = bdrv_co_truncate(bs->file, res->image_end_offset, true, - PREALLOC_MODE_OFF, 0, _err); -if (ret < 0) { -error_report_err(local_err); -res->check_errors++; -return ret; -} -s->data_end = res->image_end_offset >> BDRV_SECTOR_BITS; - -parallels_free_used_bitmap(bs); -ret = parallels_fill_used_bitmap(bs); -if (ret == -ENOMEM) { -res->check_errors++; -return ret; -} - -if (explicit) { -res->leaks_fixed += count; -} +res->leaks_fixed += count; } } Reviewed-by: Denis V. Lunev
[PATCH v4 15/21] parallels: Reverse a conditional in parallels_check_leak() to reduce indents
Let the function return a success code if a file size is not bigger than image_end_offset. Thus we can decrease indents in the next code block. Signed-off-by: Alexander Ivanov --- block/parallels.c | 72 +++ 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/block/parallels.c b/block/parallels.c index d5d87984cf..fb7bc5e555 100644 --- a/block/parallels.c +++ b/block/parallels.c @@ -773,7 +773,7 @@ parallels_check_leak(BlockDriverState *bs, BdrvCheckResult *res, BdrvCheckMode fix, bool explicit) { BDRVParallelsState *s = bs->opaque; -int64_t size; +int64_t size, count; int ret; size = bdrv_co_getlength(bs->file->bs); @@ -781,43 +781,43 @@ parallels_check_leak(BlockDriverState *bs, BdrvCheckResult *res, res->check_errors++; return size; } +if (size <= res->image_end_offset) { +return 0; +} + +count = DIV_ROUND_UP(size - res->image_end_offset, s->cluster_size); +if (explicit) { +fprintf(stderr, +"%s space leaked at the end of the image %" PRId64 "\n", +fix & BDRV_FIX_LEAKS ? "Repairing" : "ERROR", +size - res->image_end_offset); +res->leaks += count; +} +if (fix & BDRV_FIX_LEAKS) { +Error *local_err = NULL; + +/* + * In order to really repair the image, we must shrink it. + * That means we have to pass exact=true. + */ +ret = bdrv_co_truncate(bs->file, res->image_end_offset, true, + PREALLOC_MODE_OFF, 0, _err); +if (ret < 0) { +error_report_err(local_err); +res->check_errors++; +return ret; +} +s->data_end = res->image_end_offset >> BDRV_SECTOR_BITS; + +parallels_free_used_bitmap(bs); +ret = parallels_fill_used_bitmap(bs); +if (ret == -ENOMEM) { +res->check_errors++; +return ret; +} -if (size > res->image_end_offset) { -int64_t count; -count = DIV_ROUND_UP(size - res->image_end_offset, s->cluster_size); if (explicit) { -fprintf(stderr, -"%s space leaked at the end of the image %" PRId64 "\n", -fix & BDRV_FIX_LEAKS ? "Repairing" : "ERROR", -size - res->image_end_offset); -res->leaks += count; -} -if (fix & BDRV_FIX_LEAKS) { -Error *local_err = NULL; - -/* - * In order to really repair the image, we must shrink it. - * That means we have to pass exact=true. - */ -ret = bdrv_co_truncate(bs->file, res->image_end_offset, true, - PREALLOC_MODE_OFF, 0, _err); -if (ret < 0) { -error_report_err(local_err); -res->check_errors++; -return ret; -} -s->data_end = res->image_end_offset >> BDRV_SECTOR_BITS; - -parallels_free_used_bitmap(bs); -ret = parallels_fill_used_bitmap(bs); -if (ret == -ENOMEM) { -res->check_errors++; -return ret; -} - -if (explicit) { -res->leaks_fixed += count; -} +res->leaks_fixed += count; } } -- 2.40.1