From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35081) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1at9da-0002uo-2h for qemu-devel@nongnu.org; Thu, 21 Apr 2016 04:07:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1at9dW-0000Ve-SZ for qemu-devel@nongnu.org; Thu, 21 Apr 2016 04:06:58 -0400 Received: from mx1.redhat.com ([209.132.183.28]:49776) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1at9dW-0000VU-L7 for qemu-devel@nongnu.org; Thu, 21 Apr 2016 04:06:54 -0400 Date: Thu, 21 Apr 2016 09:06:50 +0100 From: "Dr. David Alan Gilbert" Message-ID: <20160421080649.GA2268@work-vm> References: <1A93516D63C74545A87B6EF0983F2B1F052E897C@SHSMSX103.ccr.corp.intel.com> <20160420083609.GD2263@work-vm> <1A93516D63C74545A87B6EF0983F2B1F052EB19A@SHSMSX103.ccr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1A93516D63C74545A87B6EF0983F2B1F052EB19A@SHSMSX103.ccr.corp.intel.com> Subject: Re: [Qemu-devel] Persistent Main Memory in QEmu List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Li, Tianyou" Cc: "qemu-devel@nongnu.org" * Li, Tianyou (tianyou.li@intel.com) wrote: > Hi Dave, > > Thanks for your response. Below are my explanations: > > > Can you explain what you mean by 'persistent' - where do you intend to store the guests memory? > > There could be a file or memory region that can survive across guest shutdown/reboot. Seems Artyom has pointed out the right direction and I have verified by looking into the code throughout the call stack from pc_memory_init to qemu_ram_alloc_from_file. I plan to write something like kernel module to verify the persistency characteristics from guest point of view. Maybe it's worth checking the stuff in docs/memory-hotplug.txt - that shows how to create a memory region backed by a file (in that case using a hugepagefs - but I think it's general). Note, I don't think there's a way to use that at the moment for main PC memory. > > > Also, remember that you'll need to save/load the device state as well as the rest of RAM. > > Device state handling could be done from two different aspects: 1. From host perspective or, 2. From guest perspective. From host, qemu will always know the state of guest devices so that we can use qemu command to checkpoint states, as you point out (very appreciated that, I do not know the command xen-save-devices-state before). From guest, it can be something like suspend to RAM or S3 for PC to checkpoint the current state of PC and restore them when wakeup. Currently I will prefer the #2. > > In summary, I'd like to have the functionality in qemu that can save & restore PC main memory at shutdown/power-on phase. Thanks. Dave > > Regards, > Tianyou > > > -----Original Message----- > From: Dr. David Alan Gilbert [mailto:dgilbert@redhat.com] > Sent: Wednesday, April 20, 2016 4:36 PM > To: Li, Tianyou > Cc: qemu-devel@nongnu.org > Subject: Re: [Qemu-devel] Persistent Main Memory in QEmu > > * Li, Tianyou (tianyou.li@intel.com) wrote: > > Hi, > > > > Currently we are trying to implement below functionalities in QEmu: main memory in guest can be logically viewed as persistent and its content can be survived through reboot or shutdown/powerup. > > > > I have looked into the QEmu memory management code include memory.c, exec.c and other related source, unfortunately I do not have the chance to get clue of how to make QEmu main memory persistent. I found that pmemsave could dump physical memory of guest, but I could not find how to restore the dump file before VM startup to execution. > > Can you explain what you mean by 'persistent' - where do you intend to store the guests memory? > Also, remember that you'll need to save/load the device state as well as the rest of RAM. If you've got a way to preserve RAM then maybe hte xen-save-devices-state qemu command could be used to store the rest of devices. > > Dave > > > > > Could anyone provide some hints to me? Thanks in advance! > > > > Regards, > > Tianyou > -- > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK