On 08/11/2011 05:32 PM, Umesh Deshpande wrote:
Following patch series deals with VCPU and iothread starvation during the migration of a guest. Currently the iothread is responsible for performing the guest migration. It holds qemu_mutex during the migration and doesn't allow VCPU to enter the qemu mode and delays its return to the guest. The guest migration, executed as an iohandler also delays the execution of other iohandlers. In the following patch series, The migration has been moved to a separate thread to reduce the qemu_mutex contention and iohandler starvation. Umesh Deshpande (4): separate thread for VM migration synchronous migrate_cancel lock to protect memslots separate migration bitmap arch_init.c | 26 ++++++++++---- buffered_file.c | 100 +++++++++++++++++++++++++++++++++------------------ buffered_file.h | 4 ++ cpu-all.h | 39 ++++++++++++++++++++ cpus.c | 12 ++++++ exec.c | 74 +++++++++++++++++++++++++++++++++++++ hw/hw.h | 5 ++- migration.c | 50 ++++++++++++-------------- migration.h | 6 +++ qemu-common.h | 2 + qemu-thread-posix.c | 10 +++++ qemu-thread.h | 1 + savevm.c | 31 +++++++++++----- 13 files changed, 280 insertions(+), 80 deletions(-)
Looks quite good. Note that when submitting for inclusion, the last two patches should go first, so that you only add the migration thread after you're race free. If there are parts that do not apply before patches 1/2, that likely means they are in the wrong patch. :)
Thanks, Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html