qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v10 2/6] raw, qcow2: don't convert file size to


From: Max Reitz
Subject: Re: [Qemu-devel] [PATCH v10 2/6] raw, qcow2: don't convert file size to sector size
Date: Sat, 14 Jun 2014 21:00:37 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0

On 12.06.2014 05:54, Hu Tao wrote:
and avoid converting it back later. And round up file size to nearest
sector.

Signed-off-by: Hu Tao <address@hidden>
---
  block/qcow2.c     | 8 ++++----
  block/raw-posix.c | 4 ++--
  block/raw-win32.c | 4 ++--
  3 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/block/qcow2.c b/block/qcow2.c
index 75b28cd..6732e7c 100644
--- a/block/qcow2.c
+++ b/block/qcow2.c
@@ -1714,7 +1714,7 @@ static int qcow2_create2(const char *filename, int64_t 
total_size,
      }
/* Okay, now that we have a valid image, let's give it the right size */
-    ret = bdrv_truncate(bs, total_size * BDRV_SECTOR_SIZE);
+    ret = bdrv_truncate(bs, total_size);
      if (ret < 0) {
          error_setg_errno(errp, -ret, "Could not resize image");
          goto out;
@@ -1767,7 +1767,7 @@ static int qcow2_create(const char *filename, 
QEMUOptionParameter *options,
  {
      const char *backing_file = NULL;
      const char *backing_fmt = NULL;
-    uint64_t sectors = 0;
+    uint64_t size = 0;
      int flags = 0;
      size_t cluster_size = DEFAULT_CLUSTER_SIZE;
      int prealloc = 0;
@@ -1778,7 +1778,7 @@ static int qcow2_create(const char *filename, 
QEMUOptionParameter *options,
      /* Read out options */
      while (options && options->name) {
          if (!strcmp(options->name, BLOCK_OPT_SIZE)) {
-            sectors = DIV_ROUND_UP(options->value.n, BDRV_SECTOR_SIZE);
+            size = ROUND_UP(options->value.n, BDRV_SECTOR_SIZE);

I'm not even sure whether the ROUND_UP() is needed anymore, as qcow2 should only care about clusters. However, we still have that more or less arbitrary "sector" unit in the block layer (although I think Markus is trying to get rid of it), so it's probably for the better to align the size here.

Reviewed-by: Max Reitz <address@hidden>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]