On (Fri) 09 Dec 2011 [10:22:25], Luiz Capitulino wrote: > On Thu, 08 Dec 2011 21:18:00 -0600 > Michael Roth <mdr...@linux.vnet.ibm.com> wrote: > > > On 12/08/2011 12:52 PM, Luiz Capitulino wrote: > > > This is basically suspend to disk on a Linux guest. > > > > > > Signed-off-by: Luiz Capitulino<lcapitul...@redhat.com> > > > --- > > > > > > This is an RFC because I did it as simple as possible and I'm open to > > > suggestions... > > > > > > Now, while testing this or even "echo disk> /sys/power/state" I get > > > several > > > funny results. Some times qemu just dies after printing that message: > > > > > > "Guest moved used index from 20151 to 1" > > > > > > Some times it doesn't die, but I'm unable to log into the guest: I type > > > username& password but the terminal kind of locks (the shell doesn't > > > run). > > > > > > Some times it works...
... > > It doesn't seem to tell us much...but there's a bunch of successful > > reads before the final virtio_queue_notify, and that notify takes quite > > a bit longer than the previous ones. I can only speculate at this point, > > but I would guess this is when the guest has completed loading the saved > > memory from disk and it attempting to restore the previous state.. > > > > In the kernel there's a virtio_pci_suspend() PM callback that seems to > > get called around this time and restores the PCI config from > > virtio_pci_resume(). Could that be switching us to an older vring and > > throwing the QEMU side out of whack? > > Not sure. But Amit has confirmed that it's a virtio bug and he's working > on it. Right Amit? Yes. You can try the series at https://lkml.org/lkml/2011/12/6/479 in the guest kernel to see it all work. Amit