[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V6 2/5] qemu-img: Add infinite loop checking in
From: |
Fam Zheng |
Subject: |
Re: [Qemu-devel] [PATCH V6 2/5] qemu-img: Add infinite loop checking in bdrv_new_open() |
Date: |
Fri, 8 Nov 2013 18:21:59 +0800 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Tue, 11/05 22:09, Xu Wang wrote:
> Every image should be checked if there is infinite loop in backing
> file chain before open it. So infinite loop check was added into
> bdrv_new_open(). If @filename is opened without the flag
> BDRV_O_NO_BACKING, the infinite loop check should be called.
>
> Signed-off-by: Xu Wang <address@hidden>
I think this should be squashed into patch 1 so that the checking in
collect_image_info_list is kept along the series.
Fam
> ---
> qemu-img.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/qemu-img.c b/qemu-img.c
> index d5ec45b..3af7996 100644
> --- a/qemu-img.c
> +++ b/qemu-img.c
> @@ -281,6 +281,14 @@ static BlockDriverState *bdrv_new_open(const char
> *filename,
> drv = NULL;
> }
>
> + /* check backing file loop if the whole chain need to be opened */
> + if (!(flags & BDRV_O_NO_BACKING) &&
> + !bdrv_backing_chain_okay(filename, fmt)) {
> + error_report("bdrv_new_open: Open %s failed. There is loop exists "
> + "in the backing chain", filename);
> + goto fail;
> + }
> +
> ret = bdrv_open(bs, filename, NULL, flags, drv, &local_err);
> if (ret < 0) {
> error_report("Could not open '%s': %s", filename,
> --
> 1.8.1.4
>
>
- [Qemu-devel] [PATCH V6 0/5] Refine and export backing file loop check, Xu Wang, 2013/11/05
- [Qemu-devel] [PATCH V6 2/5] qemu-img: Add infinite loop checking in bdrv_new_open(), Xu Wang, 2013/11/05
- [Qemu-devel] [PATCH V6 3/5] block: Add check infinite loop in bdrv_img_create(), Xu Wang, 2013/11/05
- [Qemu-devel] [PATCH V6 4/5] block: Add backing file loop check in change_backing_file(), Xu Wang, 2013/11/05
- [Qemu-devel] [PATCH V6 5/5] blockdev: Add infinite loop check in drive_init(), Xu Wang, 2013/11/05