On Mon, 15 Mar 2010 15:55:26 +0000
"Daniel P. Berrange" <berra...@redhat.com> wrote:

> On Mon, Mar 15, 2010 at 04:01:27PM +0100, Fran?ois Revol wrote:
> > Hello,
> > while working on a demonstrator for a green-IT project, to show
> > scheduled machine shutdown and powering depending on various
> > conditions, I wondered if I could use QEMU with wake-on-lan
> > transparently, but it seems it's not implemented at all.
> > 
> > I though I could try to add support for it, and with -S it theorically
> > should be doable at least for the first boot, but the network packets
> > do not go much further until the NIC is actually initialized, as most
> > network layers use qemu_can_send_packet() which returns 0 if the
> > machine is stopped.
> > Hacking this function to return 1 seems to push the packet upward, but
> > I couldn't find a single point where I could check for WOL packets,
> > different -net subsystems using different code paths.
> > 
> > Also, it seems -no-shutdown doesn't actually "stop the emulation" as
> > said in the manual, it actually keeps the vm running (and using cpu),
> > despite the OS trying to shutdown via ACPI. At least I tested so with
> > Haiku (and acpi=true in kernel config), which properly exits QEMU
> > without -no-shutdown.
> 
> Hmm, I think -no-shutdown should at least stop the CPUs executing. It is
> not really useful on its own though. The app managing QEMU would want to
> use the new JSON based monitor to listen for the SHUTDOWN event to be
> emitted, so it can detect the shutdown completing & then take action it
> wants either reset the guest, or kill QEMU, etc

 If I'm not missing something, -no-shutdown calls vm_stop(), which calls
pause_all_vcpus().


Reply via email to