From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdT8w-0007pD-3m for qemu-devel@nongnu.org; Thu, 04 Oct 2007 12:01:42 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdT8v-0007of-04 for qemu-devel@nongnu.org; Thu, 04 Oct 2007 12:01:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdT8u-0007ob-MX for qemu-devel@nongnu.org; Thu, 04 Oct 2007 12:01:40 -0400 Received: from sark4.cc.gatech.edu ([130.207.7.19]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdT8t-0001sS-Oq for qemu-devel@nongnu.org; Thu, 04 Oct 2007 12:01:40 -0400 Received: from sark3.cc.gatech.edu (sark3.cc.gatech.edu [130.207.7.22]) by sark4.cc.gatech.edu (8.13.6/8.12.8) with ESMTP id l94G1Wcs027811 for ; Thu, 4 Oct 2007 12:01:33 -0400 (EDT) Received: from [192.168.0.130] (c-66-56-81-115.hsd1.ga.comcast.net [66.56.81.115]) (authenticated bits=0) by sark3.cc.gatech.edu (8.12.10/8.12.10) with ESMTP id l94G1W9i004998 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NOT) for ; Thu, 4 Oct 2007 12:01:32 -0400 (EDT) Message-ID: <47050E64.5070901@cc.gatech.edu> Date: Thu, 04 Oct 2007 12:01:40 -0400 From: Kaushik Bhandankar MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Pending Disk I/O requests during live VM migration Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hello I am trying to implement functionality in fully-virtualized xen wherein the responses to the pending disk I/O requests during live VM migration get trasnsferred to the new VMM form the old VMM. Specifically, I am looking at IDE disk (tools/ioemu/hw/ide.c) Basically, ide.c:pci_ide_save() saves the state of the IDE disk in a QEMUFile and this file is sent over the network (can somebody point me to the code where this happens ??)) so that the new VMM (where the VM has migrated) invokes ide.c:pci_ide_load() to retrieve the IDE Disk contents form the file. As of now, the pending disk I/O requests do not get saved in this file so these pending disk I/O requests are not available when executing pci_ide_load(). I am still trying to figure out where the pending Disk I/O requests get stored in the VMM so that during live VM migration, these requests can be put in the QEMUFile (As mentioned above) so that they can be reissued by the new VMM. Much better would be to send the responses to these pending disk I/O requests from the old to new VMM. Can somebody help me out with this as I am newbie here....?? register_savevm() in ioemu/vl.c is simply used to register the save & load handlers......... register_savevm() is called in ioemu/hw/ide.c:pci_piix_ide_init() to register pci_ide_save() and pci_ide_load() as the save & load handlers for IDE disks....... qemu_savevm() in ioemu/vl.c walks the list of the registered save handlers whereas qemu_loadvm() in vl.c expects a load handler to have been registered for the corresponding save handlers for each chunk of the save file. Any help in locating the code would be greatly appreciated. -Kaushik