qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v1 2/3] qcow2: fix offset overflow


From: Kevin Wolf
Subject: Re: [Qemu-devel] [PATCH v1 2/3] qcow2: fix offset overflow
Date: Mon, 20 Jan 2014 16:14:10 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Am 19.01.2014 um 17:12 hat Max Reitz geschrieben:
> On 30.12.2013 06:29, Hu Tao wrote:
> >When cluster size is big enough it can lead offset overflow
> >in qcow2_alloc_clusters_at(). This patch fixes it.
> >
> >Signed-off-by: Hu Tao <address@hidden>
> >---
> >  block/qcow2-refcount.c | 7 ++++++-
> >  1 file changed, 6 insertions(+), 1 deletion(-)
> >
> >diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
> >index c974abe..b3ebb7f 100644
> >--- a/block/qcow2-refcount.c
> >+++ b/block/qcow2-refcount.c
> >@@ -676,7 +676,12 @@ int qcow2_alloc_clusters_at(BlockDriverState *bs, 
> >uint64_t offset,
> >      BDRVQcowState *s = bs->opaque;
> >      uint64_t cluster_index;
> >      uint64_t old_free_cluster_index;
> >-    int i, refcount, ret;
> >+    uint64_t i;
> >+    int refcount, ret;
> >+
> >+    if (nb_clusters <= 0) {
> >+        return 0;
> 
> I think I'd rather return -EINVAL here.

In fact, I think return 0 is fine for nb_clusters == 0, and we should
assert(nb_clusters >= 0).

Kevin



reply via email to

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