[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Qemu-block] [PATCH v8 00/11] Support streaming to an i
From: |
Alberto Garcia |
Subject: |
Re: [Qemu-devel] [Qemu-block] [PATCH v8 00/11] Support streaming to an intermediate layer |
Date: |
Wed, 24 Jun 2015 12:02:35 +0200 |
User-agent: |
Notmuch/0.13.2 (http://notmuchmail.org) Emacs/23.2.1 (i486-pc-linux-gnu) |
On Wed 24 Jun 2015 10:02:03 AM CEST, Alberto Garcia wrote:
> [A] <- [B] <- [C] <- [D] <- [E] <- [F] <- [G]
>
> [...]
>
> The way it works is that stream_start() reopens the destination image
> in read-write mode (if needed), creates the stream_run() coroutine to
> copy the data, and finally stream_complete() puts it back in read-only
> mode and closes the images that are removed from the chain.
There's more. If I perform a single streaming operation [A] => [D] this
also crashes, although in a different way.
block.c:1764: bdrv_reopen_prepare: Assertion `reopen_state->bs->drv !=
((void *)0)' failed.
What happens is that in stream_complete() all images that have been
removed from the chain ([A], [B] and [C]) are closed, and then [D] is
reopened in read-only mode.
The reopen queue contains [C], that is still listed as a child of [D]
although it's no longer a valid pointer.
[C] is opened using bdrv_open_backing_file() and attached to [D] with
bdrv_attach_child(), but never detached afterwards.
Berto
- [Qemu-devel] [PATCH v8 10/11] qemu-iotests: test block-stream operations in parallel, (continued)
- [Qemu-devel] [PATCH v8 10/11] qemu-iotests: test block-stream operations in parallel, Alberto Garcia, 2015/06/22
- [Qemu-devel] [PATCH v8 11/11] qemu-iotests: test overlapping block-stream operations, Alberto Garcia, 2015/06/22
- [Qemu-devel] [PATCH v8 05/11] block: Add QMP support for streaming to an intermediate layer, Alberto Garcia, 2015/06/22
- [Qemu-devel] [PATCH v8 01/11] block: keep a list of block jobs, Alberto Garcia, 2015/06/22
- [Qemu-devel] [PATCH v8 02/11] block: allow block jobs in any arbitrary node, Alberto Garcia, 2015/06/22
- Re: [Qemu-devel] [PATCH v8 00/11] Support streaming to an intermediate layer, Stefan Hajnoczi, 2015/06/23