diff mbox series

[17/21] parallels: improve readability of allocate_clusters

Message ID 20230915184130.403366-20-den@openvz.org
State New
Headers show
Series implement discard operation for Parallels images | expand

Commit Message

Denis V. Lunev Sept. 15, 2023, 6:41 p.m. UTC
Replace 'space' representing the amount of data to preallocate with
'bytes'.

Rationale:
* 'space' at each place is converted to bytes
* the unit is more close to the variable name

Signed-off-by: Denis V. Lunev <den@openvz.org>
---
 block/parallels.c | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

Comments

Alexander Ivanov Sept. 18, 2023, 1:15 p.m. UTC | #1
On 9/15/23 20:41, Denis V. Lunev wrote:
> Replace 'space' representing the amount of data to preallocate with
> 'bytes'.
>
> Rationale:
> * 'space' at each place is converted to bytes
> * the unit is more close to the variable name
>
> Signed-off-by: Denis V. Lunev <den@openvz.org>
> ---
>   block/parallels.c | 13 +++++--------
>   1 file changed, 5 insertions(+), 8 deletions(-)
>
> diff --git a/block/parallels.c b/block/parallels.c
> index 2efa578e21..76aedfd7c4 100644
> --- a/block/parallels.c
> +++ b/block/parallels.c
> @@ -279,7 +279,8 @@ allocate_clusters(BlockDriverState *bs, int64_t sector_num,
>       first_free = find_first_zero_bit(s->used_bmap, s->used_bmap_size);
>       if (first_free == s->used_bmap_size) {
>           uint32_t new_usedsize;
> -        int64_t space = to_allocate * s->tracks + s->prealloc_size;
> +        int64_t bytes = to_allocate * s->cluster_size;
> +        bytes += s->prealloc_size * BDRV_SECTOR_SIZE;
>   
>           host_off = s->data_end * BDRV_SECTOR_SIZE;
>   
> @@ -289,8 +290,7 @@ allocate_clusters(BlockDriverState *bs, int64_t sector_num,
>            * force the safer-but-slower fallocate.
>            */
>           if (s->prealloc_mode == PRL_PREALLOC_MODE_TRUNCATE) {
> -            ret = bdrv_co_truncate(bs->file,
> -                                   (s->data_end + space) << BDRV_SECTOR_BITS,
> +            ret = bdrv_co_truncate(bs->file, host_off + bytes,
>                                      false, PREALLOC_MODE_OFF,
>                                      BDRV_REQ_ZERO_WRITE, NULL);
>               if (ret == -ENOTSUP) {
> @@ -298,16 +298,13 @@ allocate_clusters(BlockDriverState *bs, int64_t sector_num,
>               }
>           }
>           if (s->prealloc_mode == PRL_PREALLOC_MODE_FALLOCATE) {
> -            ret = bdrv_co_pwrite_zeroes(bs->file,
> -                                        s->data_end << BDRV_SECTOR_BITS,
> -                                        space << BDRV_SECTOR_BITS, 0);
> +            ret = bdrv_co_pwrite_zeroes(bs->file, host_off, bytes, 0);
>           }
>           if (ret < 0) {
>               return ret;
>           }
>   
> -        new_usedsize = s->used_bmap_size +
> -                       (space << BDRV_SECTOR_BITS) / s->cluster_size;
> +        new_usedsize = s->used_bmap_size + bytes / s->cluster_size;
>           s->used_bmap = bitmap_zero_extend(s->used_bmap, s->used_bmap_size,
>                                             new_usedsize);
>           s->used_bmap_size = new_usedsize;

Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>
diff mbox series

Patch

diff --git a/block/parallels.c b/block/parallels.c
index 2efa578e21..76aedfd7c4 100644
--- a/block/parallels.c
+++ b/block/parallels.c
@@ -279,7 +279,8 @@  allocate_clusters(BlockDriverState *bs, int64_t sector_num,
     first_free = find_first_zero_bit(s->used_bmap, s->used_bmap_size);
     if (first_free == s->used_bmap_size) {
         uint32_t new_usedsize;
-        int64_t space = to_allocate * s->tracks + s->prealloc_size;
+        int64_t bytes = to_allocate * s->cluster_size;
+        bytes += s->prealloc_size * BDRV_SECTOR_SIZE;
 
         host_off = s->data_end * BDRV_SECTOR_SIZE;
 
@@ -289,8 +290,7 @@  allocate_clusters(BlockDriverState *bs, int64_t sector_num,
          * force the safer-but-slower fallocate.
          */
         if (s->prealloc_mode == PRL_PREALLOC_MODE_TRUNCATE) {
-            ret = bdrv_co_truncate(bs->file,
-                                   (s->data_end + space) << BDRV_SECTOR_BITS,
+            ret = bdrv_co_truncate(bs->file, host_off + bytes,
                                    false, PREALLOC_MODE_OFF,
                                    BDRV_REQ_ZERO_WRITE, NULL);
             if (ret == -ENOTSUP) {
@@ -298,16 +298,13 @@  allocate_clusters(BlockDriverState *bs, int64_t sector_num,
             }
         }
         if (s->prealloc_mode == PRL_PREALLOC_MODE_FALLOCATE) {
-            ret = bdrv_co_pwrite_zeroes(bs->file,
-                                        s->data_end << BDRV_SECTOR_BITS,
-                                        space << BDRV_SECTOR_BITS, 0);
+            ret = bdrv_co_pwrite_zeroes(bs->file, host_off, bytes, 0);
         }
         if (ret < 0) {
             return ret;
         }
 
-        new_usedsize = s->used_bmap_size +
-                       (space << BDRV_SECTOR_BITS) / s->cluster_size;
+        new_usedsize = s->used_bmap_size + bytes / s->cluster_size;
         s->used_bmap = bitmap_zero_extend(s->used_bmap, s->used_bmap_size,
                                           new_usedsize);
         s->used_bmap_size = new_usedsize;