[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 20/41] migration: run pending/iterate callbacks
From: |
Juan Quintela |
Subject: |
Re: [Qemu-devel] [PATCH 20/41] migration: run pending/iterate callbacks out of big lock |
Date: |
Fri, 22 Feb 2013 12:07:28 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux) |
Paolo Bonzini <address@hidden> wrote:
> This makes it possible to do blocking writes directly to the socket,
> with no buffer in the middle. For RAM, only the migration_bitmap_sync()
> call needs the iothread lock. For block migration, it is needed by
> the block layer (including bdrv_drain_all and dirty bitmap access),
> but because some code is shared between iterate and complete, all of
> mig_save_device_dirty is run with the lock taken.
>
> In the savevm case, the iterate callback runs within the big lock.
> This is annoying because it complicates the rules. Luckily we do not
> need to do anything about it: the RAM iterate callback does not need
> the iothread lock, and block migration never runs during savevm.
>
> Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Juan Quintela <address@hidden>
- Re: [Qemu-devel] [PATCH 18/41] block-migration: add lock, (continued)
- [Qemu-devel] [PATCH 22/41] migration: yay, buffering is gone, Paolo Bonzini, 2013/02/15
- [Qemu-devel] [PATCH 27/41] migration: remove useless qemu_file_get_error check, Paolo Bonzini, 2013/02/15
- [Qemu-devel] [PATCH 25/41] migration: eliminate last_round, Paolo Bonzini, 2013/02/15
- [Qemu-devel] [PATCH 26/41] migration: detect error before sleeping, Paolo Bonzini, 2013/02/15