From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:37399) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qmu7j-00054N-8n for qemu-devel@nongnu.org; Fri, 29 Jul 2011 16:57:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qmu7i-0004qd-5c for qemu-devel@nongnu.org; Fri, 29 Jul 2011 16:57:35 -0400 Received: from mx1.redhat.com ([209.132.183.28]:1030) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qmu7h-0004qO-Ui for qemu-devel@nongnu.org; Fri, 29 Jul 2011 16:57:34 -0400 From: Umesh Deshpande Date: Fri, 29 Jul 2011 16:57:23 -0400 Message-Id: Subject: [Qemu-devel] [RFC PATCH v2 0/3] separate thread for VM migration List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: kvm@vger.kernel.org, qemu-devel@nongnu.org Cc: pbonzini@redhat.com, mtosatti@redhat.com, Umesh Deshpande , Juan Quintela Following patch 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. Also current dirty bitmap is split into per memslot bitmap to reduce its size. Umesh Deshpande (3): separate thread for VM migration fine grained qemu_mutex locking for migration per memslot dirty bitmap arch_init.c | 14 ++++++++++-- buffered_file.c | 28 ++++++++++++++++--------- buffered_file.h | 4 +++ cpu-all.h | 40 ++++++++++++++++++++++++++++++------ exec.c | 38 +++++++++++++++++++++------------- migration.c | 60 ++++++++++++++++++++++++++++++++++++++++++++---------- migration.h | 3 ++ savevm.c | 22 +------------------- savevm.h | 29 ++++++++++++++++++++++++++ xen-all.c | 6 +--- 10 files changed, 173 insertions(+), 71 deletions(-) create mode 100644 savevm.h -- 1.7.4.1