From: Eric Blake <eblake@redhat.com>
To: mrezanin@redhat.com
Cc: kwolf@redhat.com, pbonzini@redhat.com, qemu-devel@nongnu.org,
stefanha@redhat.com
Subject: Re: [Qemu-devel] [PATCH v7 3/4] qemu-img: Add compare subcommand
Date: Wed, 19 Dec 2012 11:12:49 -0700 [thread overview]
Message-ID: <50D203A1.70808@redhat.com> (raw)
In-Reply-To: <1355751593-31535-4-git-send-email-mrezanin@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1830 bytes --]
On 12/17/2012 06:39 AM, mrezanin@redhat.com wrote:
> From: Miroslav Rezanina <mrezanin@redhat.com>
>
> This patch adds new qemu-img subcommand that compare content of two disk
s/compare/compares/
> images.
>
> Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
> ---
> @@ -587,7 +587,7 @@ static int img_commit(int argc, char **argv)
> }
>
> /*
> - * Returns true iff the first sector pointed to by 'buf' contains at least
> + * Returns true if the first sector pointed to by 'buf' contains at least
Spurious change. 'iff' is correct here, for its mathematical meaning of
if-and-only-if.
> * a non-NUL byte.
> *
> * 'pnum' is set to the number of sectors (including and immediately following
> @@ -688,6 +688,272 @@ static int compare_sectors(const uint8_t *buf1, const uint8_t *buf2, int n,
>
> #define IO_BUF_SIZE (2 * 1024 * 1024)
>
> +static int64_t sectors_to_bytes(int64_t sectors)
> +{
> + return sectors << BDRV_SECTOR_BITS;
Worth checking for overflow?
> +static int check_empty_sectors(BlockDriverState *bs, int64_t sect_num,
> + int sect_count, const char *filename,
> + uint8_t *buffer, bool quiet)
> +{
> + int pnum, ret = 0;
> + ret = bdrv_read(bs, sect_num, buffer, sect_count);
> + if (ret < 0) {
> + error_report("Error while reading offset %" PRId64 " of %s: %s",
> + sectors_to_bytes(sect_num), filename, strerror(-ret));
> + return ret;
> + }
> + ret = is_allocated_sectors(buffer, sect_count, &pnum);
Is this logic backwards? Isn't it wasteful to read a sector prior to
seeing if it was actually allocated?
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 619 bytes --]
next prev parent reply other threads:[~2012-12-19 18:12 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-17 13:39 [Qemu-devel] [PATCH v7 0/4] Add subcommand compare for qemu-img mrezanin
2012-12-17 13:39 ` [Qemu-devel] [PATCH v7 1/4] block: Add synchronous wrapper for bdrv_co_is_allocated_above mrezanin
2012-12-17 13:39 ` [Qemu-devel] [PATCH v7 2/4] qemu-img: Add "Quiet mode" option mrezanin
2012-12-17 13:39 ` [Qemu-devel] [PATCH v7 3/4] qemu-img: Add compare subcommand mrezanin
2012-12-17 13:39 ` [Qemu-devel] [PATCH v7 4/4] Add qemu-img compare documentation mrezanin
2012-12-19 18:15 ` Eric Blake
2012-12-20 19:46 ` Miroslav Rezanina
2012-12-19 18:12 ` Eric Blake [this message]
2012-12-20 19:44 ` [Qemu-devel] [PATCH v7 3/4] qemu-img: Add compare subcommand Miroslav Rezanina
2012-12-19 18:06 ` [Qemu-devel] [PATCH v7 2/4] qemu-img: Add "Quiet mode" option Eric Blake
2012-12-20 19:31 ` Miroslav Rezanina
2012-12-19 17:54 ` [Qemu-devel] [PATCH v7 1/4] block: Add synchronous wrapper for bdrv_co_is_allocated_above Eric Blake
2013-01-14 10:26 ` [Qemu-devel] [PATCH v8 0/4] Add subcommand compare for qemu-img Miroslav Rezanina
2013-01-14 10:26 ` [Qemu-devel] [PATCH v8 1/4] block: Add synchronous wrapper for bdrv_co_is_allocated_above Miroslav Rezanina
2013-01-14 21:33 ` Eric Blake
2013-01-14 10:26 ` [Qemu-devel] [PATCH v8 2/4] qemu-img: Add "Quiet mode" option Miroslav Rezanina
2013-01-14 23:01 ` Eric Blake
2013-01-14 10:26 ` [Qemu-devel] [PATCH v8 3/4] qemu-img: Add compare subcommand Miroslav Rezanina
2013-01-14 10:26 ` [Qemu-devel] [PATCH v8 4/4] Add qemu-img compare documentation Miroslav Rezanina
2013-01-14 23:24 ` Eric Blake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50D203A1.70808@redhat.com \
--to=eblake@redhat.com \
--cc=kwolf@redhat.com \
--cc=mrezanin@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.