qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Save IDEState data to files when VM shutdown


From: Huaicheng Li
Subject: Re: [Qemu-devel] Save IDEState data to files when VM shutdown
Date: Wed, 9 Dec 2015 04:08:12 -0600

> Why are you trying to save the state during shutdown?


The structure I added into IDEState keeps being updated when VM is up. So I 
think it’s a safe way to do this during shutdown. When the VM is started again, 
it can continue from the status saved during last shutdown. 

Thanks for your help. I will look into the code first.


> On Dec 9, 2015, at 3:20 AM, Dr. David Alan Gilbert <address@hidden> wrote:
> 
> * Huaicheng Li (address@hidden) wrote:
>> Hi all,
>> 
>> Please correct me if I’m wrong.
>> 
>> I made some changes to IDE emulation (add some extra structures to “struct 
>> IDEState") and want to save these info to files when VM shutdowns. So I can 
>> reload these info from files next time when VM starts.  According to my 
>> understanding, one IDEState structure is corresponding to one disk for VM 
>> and all available drives are probed/initialised by ide_init2() in hw/ide.c 
>> (I used qemu v0.11) during VM startup. It seemed that IDEState structure are 
>> saved to QEMUFile structure via pci_ide_save(), but I can only trace up to 
>> register_savevm(), where pci_ide_save() is registered as a callback. I can’t 
>> find where exactly this function starts execution or being called.  My 
>> questions are: 
> 
> Version 0.11 is *ancient* - please start with something newer; pci_ide_save 
> was removed 6 years ago.
> 
>> (1). Does QEMUFile structure represent a running VM instance, through which 
>> I can access the IDE drive (struct IDEState) pointers ?
>> 
>> (2). When does qemu execute pci_ide_save()? 
> 
> QEMUFile is part of the migration code; it forms a stream of data containing
> all of the device and RAM State during migration.  See savevm.c for what 
> drives
> this (in migration/savevm.c in modern qemu).
> Extracting the state of one device from the stream isn't that easy.
> 
>> (3). How does qemu handle VM shutdown? It seems ACPI event is sent to VM so 
>> guest OS will shutdown in the way like real OS running on real hardware. But 
>> how and where does qemu exactly handle this? I think I need to add my codes 
>> here. 
> 
> I don't know the detail of that; I suggest following
> the code from qemu_system_powerdown.
> 
> Why are you trying to save the state during shutdown?
> 
> Dave
> 
>> 
>> Any hints, suggestions would be appreciated. Thanks.
>> 
>> Huaicheng Li
> --
> Dr. David Alan Gilbert / address@hidden / Manchester, UK




reply via email to

[Prev in Thread] Current Thread [Next in Thread]