[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCHv2 08/11] block-migration: efficiently encode zer
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCHv2 08/11] block-migration: efficiently encode zero blocks |
Date: |
Tue, 2 Jul 2013 09:36:38 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Mon, Jul 01, 2013 at 06:09:55PM +0200, Peter Lieven wrote:
>
> Am 01.07.2013 um 16:13 schrieb Stefan Hajnoczi <address@hidden>:
>
> > On Thu, Jun 27, 2013 at 03:11:32PM +0200, Peter Lieven wrote:
> >>
> >> /* device name */
> >> len = strlen(blk->bmds->bs->device_name);
> >> qemu_put_byte(f, len);
> >> qemu_put_buffer(f, (uint8_t *)blk->bmds->bs->device_name, len);
> >>
> >> + /* if a block is zero we need to flush here since the network
> >> + * bandwidth is now a lot higher than the storage device bandwidth.
> >> + * thus if we queue zero blocks we slow down the migration */
> >> + if (flags & BLK_MIG_FLAG_ZERO_BLOCK) {
> >> + qemu_fflush(f);
> >> + return;
> >> + }
> >
> > Not sure I understand this. Is the problem that the other side may
> > require an slow writev() to fill zeros? So you want to tell the
> > destination about the zeroes ASAP.
>
> Sorry, missed this question. Yes. If a lot of zero blocks is queued it delays
> migration because the target is idle while the source is queuing zero blocks.
Thanks. I think this makes sense.
Stefan