[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-1.2] stream: complete early if end of backin
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH for-1.2] stream: complete early if end of backing file is reached |
Date: |
Tue, 28 Aug 2012 15:16:35 +0100 |
On Tue, Aug 28, 2012 at 2:58 PM, Stefan Hajnoczi
<address@hidden> wrote:
> It is possible to create an image that is larger than its backing file.
> Reading beyond the end of the backing file produces zeroes if no writes
> have been made to those sectors in the image file.
>
> This patch finishes streaming early when the end of the backing file is
> reached. Without this patch the block job hangs and continually tries
> to stream the first sectors beyond the end of the backing file.
>
> To reproduce the hung block job bug:
>
> $ qemu-img create -f qcow2 backing.qcow2 128M
> $ qemu-img create -f qcow2 -o backing_file=backing.qcow2 image.qcow2 6G
> $ qemu -drive if=virtio,cache=none,file=image.qcow2
> (qemu) block_stream virtio0
> (qemu) info block-jobs
>
> The qemu-iotests 030 streaming test still passes.
>
> Signed-off-by: Stefan Hajnoczi <address@hidden>
> ---
> block/stream.c | 7 +++++++
> 1 file changed, 7 insertions(+)
I will resend this along with a test case.
Stefan