[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] questions about the bdrv_co_do_readv()
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] questions about the bdrv_co_do_readv() |
Date: |
Tue, 27 Aug 2013 09:45:07 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Mon, Aug 26, 2013 at 09:59:51PM -0500, Yaodong Yang wrote:
> In sum, the bdrv_co_do_readv() seems to be executed inside two thread, the
> migration thread and native iothread. Both of them executed the function
> twice for a single request. Could someone explain it for me ? I appreciate it
> very much!
Did you check the bdrv_co_readv(bs=...) argument? The calls may be
referring to two different BlockDriverState instances.
A raw image file looks like this:
BDS#1 (block/raw.c)
->backing_hd = NULL
->file = BDS#2
BDS#2 (block/raw-posix.c)
With qcow2 and no backing file you would have something like this:
BDS#1 (block/qcow2.c)
->backing_hd = NULL
->file = BDS#2
BDS#2 (block/raw-posix.c)
Expect to see calls forwarded from BDS#1 to BDS#2.
Stefan