From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44965) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZxARx-0001oA-Re for qemu-devel@nongnu.org; Fri, 13 Nov 2015 04:15:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZxARu-0002s8-Kj for qemu-devel@nongnu.org; Fri, 13 Nov 2015 04:15:17 -0500 Received: from mx1.redhat.com ([209.132.183.28]:42368) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZxARu-0002s1-Ec for qemu-devel@nongnu.org; Fri, 13 Nov 2015 04:15:14 -0500 Date: Fri, 13 Nov 2015 09:15:08 +0000 From: "Daniel P. Berrange" Message-ID: <20151113091508.GA29459@redhat.com> References: <1447354953-18893-1-git-send-email-minyard@acm.org> <1447354953-18893-18-git-send-email-minyard@acm.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <1447354953-18893-18-git-send-email-minyard@acm.org> Subject: Re: [Qemu-devel] [PATCH v4 17/17] ipmi: Add a force off function Reply-To: "Daniel P. Berrange" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: minyard@acm.org Cc: Paolo Bonzini , Igor Mammedov , Corey Minyard , qemu-devel@nongnu.org, "Michael S. Tsirkin" On Thu, Nov 12, 2015 at 01:02:33PM -0600, minyard@acm.org wrote: > From: Corey Minyard > > Allow the IPMI interface to request a forced power off. > > Signed-off-by: Corey Minyard > --- > hw/ipmi/ipmi_bmc_extern.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/hw/ipmi/ipmi_bmc_extern.c b/hw/ipmi/ipmi_bmc_extern.c > index 05b9121..7ae6294 100644 > --- a/hw/ipmi/ipmi_bmc_extern.c > +++ b/hw/ipmi/ipmi_bmc_extern.c > @@ -52,6 +52,7 @@ > #define VM_CAPABILITIES_IRQ 0x04 > #define VM_CAPABILITIES_NMI 0x08 > #define VM_CAPABILITIES_ATTN 0x10 > +#define VM_CMD_FORCEOFF 0x09 > > #define TYPE_IPMI_BMC_EXTERN "ipmi-bmc-extern" > #define IPMI_BMC_EXTERN(obj) OBJECT_CHECK(IPMIBmcExtern, (obj), \ > @@ -268,6 +269,10 @@ static void handle_hw_op(IPMIBmcExtern *ibe, unsigned char hw_op) > case VM_CMD_SEND_NMI: > k->do_hw_op(s, IPMI_SEND_NMI, 0); > break; > + > + case VM_CMD_FORCEOFF: > + exit(0); > + break; You should really be calling qemu_system_shutdown_request() rather than exit() so that you run normal QEMU shutdown logic. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|