qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] qcow2: Fix signedness bugs


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH] qcow2: Fix signedness bugs
Date: Wed, 10 Feb 2010 12:32:13 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091209 Fedora/3.0-4.fc12 Lightning/1.0pre Thunderbird/3.0

On 02/02/2010 08:20 AM, Kevin Wolf wrote:
Checking for return codes<  0 isn't really going to work with unsigned
types. Use signed types instead.

Signed-off-by: Kevin Wolf<address@hidden>

Applied.  Thanks.

Regards,

Anthony Liguori
---
  block/qcow2-cluster.c |   12 ++++++------
  block/qcow2.h         |    6 ++----
  2 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/block/qcow2-cluster.c b/block/qcow2-cluster.c
index 4e30d16..3501a94 100644
--- a/block/qcow2-cluster.c
+++ b/block/qcow2-cluster.c
@@ -219,7 +219,8 @@ static uint64_t *l2_allocate(BlockDriverState *bs, int 
l1_index)
      BDRVQcowState *s = bs->opaque;
      int min_index;
      uint64_t old_l2_offset;
-    uint64_t *l2_table, l2_offset;
+    uint64_t *l2_table;
+    int64_t l2_offset;

      old_l2_offset = s->l1_table[l1_index];

@@ -560,7 +561,8 @@ uint64_t 
qcow2_alloc_compressed_cluster_offset(BlockDriverState *bs,
  {
      BDRVQcowState *s = bs->opaque;
      int l2_index, ret;
-    uint64_t l2_offset, *l2_table, cluster_offset;
+    uint64_t l2_offset, *l2_table;
+    int64_t cluster_offset;
      int nb_csectors;

      ret = get_cluster_table(bs, offset,&l2_table,&l2_offset,&l2_index);
@@ -704,10 +706,8 @@ err:
   *
   * Return 0 on success and -errno in error cases
   */
-uint64_t qcow2_alloc_cluster_offset(BlockDriverState *bs,
-                                    uint64_t offset,
-                                    int n_start, int n_end,
-                                    int *num, QCowL2Meta *m)
+int qcow2_alloc_cluster_offset(BlockDriverState *bs, uint64_t offset,
+    int n_start, int n_end, int *num, QCowL2Meta *m)
  {
      BDRVQcowState *s = bs->opaque;
      int l2_index, ret;
diff --git a/block/qcow2.h b/block/qcow2.h
index d9ea6ab..de9397a 100644
--- a/block/qcow2.h
+++ b/block/qcow2.h
@@ -192,10 +192,8 @@ void qcow2_encrypt_sectors(BDRVQcowState *s, int64_t 
sector_num,

  uint64_t qcow2_get_cluster_offset(BlockDriverState *bs, uint64_t offset,
      int *num);
-uint64_t qcow2_alloc_cluster_offset(BlockDriverState *bs,
-                              uint64_t offset,
-                              int n_start, int n_end,
-                              int *num, QCowL2Meta *m);
+int qcow2_alloc_cluster_offset(BlockDriverState *bs, uint64_t offset,
+    int n_start, int n_end, int *num, QCowL2Meta *m);
  uint64_t qcow2_alloc_compressed_cluster_offset(BlockDriverState *bs,
                                           uint64_t offset,
                                           int compressed_size);





reply via email to

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