[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v2] migration/block: Avoid invoking blk_drain to
From: |
Juan Quintela |
Subject: |
Re: [Qemu-block] [PATCH v2] migration/block: Avoid invoking blk_drain too frequently |
Date: |
Thu, 16 Mar 2017 08:59:11 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) |
Fam Zheng <address@hidden> wrote:
> On Wed, 03/15 17:31, Dr. David Alan Gilbert wrote:
>> * Fam Zheng (address@hidden) wrote:
>> > On Wed, 03/15 11:37, Lidong Chen wrote:
>> > > Increase bmds->cur_dirty after submit io, so reduce the frequency
>> > > involve into blk_drain, and improve the performance obviously
>> > > when block migration.
>> > >
>> > > The performance test result of this patch:
>> > >
>> > > During the block dirty save phase, this patch improve guest os IOPS
>> > > from 4.0K to 9.5K. and improve the migration speed from
>> > > 505856 rsec/s to 855756 rsec/s.
>> > >
>> > > Signed-off-by: Lidong Chen <address@hidden>
>> > > ---
>> > > migration/block.c | 3 +++
>> > > 1 file changed, 3 insertions(+)
>> > >
>> > > diff --git a/migration/block.c b/migration/block.c
>> > > index 6741228..7734ff7 100644
>> > > --- a/migration/block.c
>> > > +++ b/migration/block.c
>> > > @@ -576,6 +576,9 @@ static int mig_save_device_dirty(QEMUFile *f,
>> > > BlkMigDevState *bmds,
>> > > }
>> > >
>> > > bdrv_reset_dirty_bitmap(bmds->dirty_bitmap, sector,
>> > > nr_sectors);
>> > > + sector += nr_sectors;
>> > > + bmds->cur_dirty = sector;
>> > > +
>> > > break;
>> > > }
>> > > sector += BDRV_SECTORS_PER_DIRTY_CHUNK;
>> > > --
>> > > 1.8.3.1
>> > >
>> >
>> > Nice catch above all, thank you!
>> >
>> > Reviewed-by: Fam Zheng <address@hidden>
>>
>> Are you taking that via a block pull?
>
> I can do that, but I'm not sure whether it should go to 2.9. This is a
> performance improvement, which usually doesn't qualify as bug fixes. But this
> also looks like a mistake in original code.
>
> Fam
I am taking it through migration and push it. I agree with your description.