[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V5 6/6] block: Add infinite loop check in drive_
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH V5 6/6] block: Add infinite loop check in drive_init() |
Date: |
Fri, 02 Aug 2013 16:33:33 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 |
On 08/02/2013 03:02 AM, Xu Wang wrote:
> From: Xu Wang <address@hidden>
>
> Backing file should be checked if there is a loop in it during image
> boot. Becase if there is loop qemu would no response for a long time
s/Becase/Because/
> and segment fault occured. So this patch would check backing file
s/occured/occurred/
> chain if there is loop in it before open image.
I'd suggest:
Check the backing file for a loop during image boot, to avoid a lack or
response or segfault.
>
> Signed-off-by: Xu Wang <address@hidden>
> ---
> blockdev.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/blockdev.c b/blockdev.c
> index b3a57e0..590193f 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -695,6 +695,13 @@ DriveInfo *drive_init(QemuOpts *all_opts,
> BlockInterfaceType block_default_type)
> error_report("warning: disabling copy_on_read on readonly drive");
> }
>
> + /* Add backing file loop check */
> + if (bdrv_backing_file_loop_check(file, drv ? drv->format_name : NULL,
> + NULL, NULL)) {
> + error_report("drive_init: backing file loop check failed!");
The '!' seems a bit of overkill; it is sufficient to give an error
message without trailing punctuation.
> + goto err;
> + }
> +
> ret = bdrv_open(dinfo->bdrv, file, bs_opts, bdrv_flags, drv);
> bs_opts = NULL;
>
>
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH V5 0/6] Refine and export backing file loop check, Xu Wang, 2013/08/02
- [Qemu-devel] [PATCH V5 2/6] qemu-img: Add infinite loop checking in bdrv_new_open(), Xu Wang, 2013/08/02
- [Qemu-devel] [PATCH V5 3/6] block: Add WIN32 platform support for backing_file_loop_check(), Xu Wang, 2013/08/02
- [Qemu-devel] [PATCH V5 4/6] block: Check infinite loop in bdrv_img_create(), Xu Wang, 2013/08/02
- [Qemu-devel] [PATCH V5 1/6] block/qemu-img: Refine and export infinite loop checking in collect_image_info_list(), Xu Wang, 2013/08/02
- [Qemu-devel] [PATCH V5 6/6] block: Add infinite loop check in drive_init(), Xu Wang, 2013/08/02
- Re: [Qemu-devel] [PATCH V5 6/6] block: Add infinite loop check in drive_init(),
Eric Blake <=
- [Qemu-devel] [PATCH V5 5/6] block: Add backing file loop check in change_backing_file(), Xu Wang, 2013/08/02