From: Eric Blake <eblake@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: kwolf@redhat.com, qemu-devel@nongnu.org, stefanha@redhat.com,
qemu-stable@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v4 08/21] block: expect errors from bdrv_co_is_allocated
Date: Thu, 29 Aug 2013 15:35:30 -0600 [thread overview]
Message-ID: <521FBEA2.3090703@redhat.com> (raw)
In-Reply-To: <1377784821-29561-9-git-send-email-pbonzini@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1568 bytes --]
On 08/29/2013 08:00 AM, Paolo Bonzini wrote:
Subject line mentions bdrv_co_is_allocated, but patch body deals with
bdrv_is_allocated.
> Some bdrv_is_allocated callers do not expect errors, but the fallback
> in qcow2.c might make other callers trip on assertion failures or
> infinite loops.
>
> Fix the callers to always look for errors.
>
> Cc: qemu-stable@nongnu.org
> Reviewed-by: Eric Blake <eblake@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> v4: also fix bdrv_commit, cow_read, img_convert, alloc_f
Hmm - the v4 changelog implies things changed since my review.
Thankfully, this patch still looks sane when looking at just this patch
(what you have is good). But your comment made me grep the rest of the
source code for ALL bdrv_is_allocated callers (since that's the harder
task - ensuring we didn't forget anything):
block-migration.c uses !bdrv_is_allocated as a condition for a while
loop; should that check for errors?
block/vvfat.c contains an if (bdrv_is_allocated(...)); should that
handle errors?
If you can justify that those don't need changes, then I'm okay with:
Reviewed-by: Eric Blake <eblake@redhat.com>
> block.c | 7 +++++--
> block/cow.c | 6 +++++-
> block/qcow2.c | 4 +---
> block/stream.c | 2 +-
> qemu-img.c | 16 ++++++++++++++--
> qemu-io-cmds.c | 4 ++++
> 6 files changed, 30 insertions(+), 9 deletions(-)
>
--
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: 621 bytes --]
next prev parent reply other threads:[~2013-08-29 21:35 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-29 14:00 [Qemu-devel] [PATCH v4 00/21] Add qemu-img subcommand to dump file metadata Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 01/21] cow: make reads go at a decent speed Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 02/21] cow: make writes go at a less indecent speed Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 03/21] cow: do not call bdrv_co_is_allocated Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 04/21] block: keep bs->total_sectors up to date even for growable block devices Paolo Bonzini
2013-08-29 19:51 ` Eric Blake
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 05/21] block: make bdrv_co_is_allocated static Paolo Bonzini
2013-08-29 19:53 ` Eric Blake
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 06/21] block: do not use ->total_sectors in bdrv_co_is_allocated Paolo Bonzini
2013-08-29 19:58 ` Eric Blake
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 07/21] block: remove bdrv_is_allocated_above/bdrv_co_is_allocated_above distinction Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 08/21] block: expect errors from bdrv_co_is_allocated Paolo Bonzini
2013-08-29 21:35 ` Eric Blake [this message]
2013-08-30 7:18 ` Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 09/21] qemu-img: always probe the input image for allocated sectors Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 10/21] block: make bdrv_has_zero_init return false for copy-on-write-images Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 11/21] block: introduce bdrv_get_block_status API Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 12/21] block: define get_block_status return value Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 13/21] block: return get_block_status data and flags for formats Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 14/21] block: use bdrv_has_zero_init to return BDRV_BLOCK_ZERO Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 15/21] block: return BDRV_BLOCK_ZERO past end of backing file Paolo Bonzini
2013-08-29 21:59 ` Eric Blake
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 16/21] qemu-img: add a "map" subcommand Paolo Bonzini
2013-08-29 22:49 ` Eric Blake
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 17/21] docs, qapi: document qemu-img map Paolo Bonzini
2013-08-29 15:31 ` Eric Blake
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 18/21] raw-posix: return get_block_status data and flags Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 19/21] raw-posix: report unwritten extents as zero Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 20/21] block: add default get_block_status implementation for protocols Paolo Bonzini
2013-08-29 14:00 ` [Qemu-devel] [PATCH v4 21/21] block: look for zero blocks in bs->file Paolo Bonzini
2013-09-04 15:50 ` [Qemu-devel] [PATCH v4 00/21] Add qemu-img subcommand to dump file metadata Stefan Hajnoczi
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=521FBEA2.3090703@redhat.com \
--to=eblake@redhat.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).