Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Oct 2013 15:20:01 GMT
From:      =?ISO-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
To:        freebsd-xen@FreeBSD.org
Subject:   Re: kern/171118: [xen] FreeBSD XENHVM guest doesn&#39;t shutdown cleanly
Message-ID:  <201310211520.r9LFK12g076844@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/171118; it has been noted by GNATS.

From: =?ISO-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
To: <bug-followup@FreeBSD.org>, <feld@feld.me>
Cc:  
Subject: Re: kern/171118: [xen] FreeBSD XENHVM guest doesn&#39;t shutdown
 cleanly
Date: Mon, 21 Oct 2013 16:18:34 +0100

 When using libxl the event sent is a "poweroff", but I guess XenServer 
 toolstack is sending a "halt" event instead (which libxl doesn't use 
 for anything). The following patch wires the "halt" event handler to 
 the "poweroff" handler and removes the now unused "halt" handler.
 
 I'm currently on a trip, so I haven't been able to test the patch 
 (not even compile tested).
 
 ---
 diff --git a/sys/dev/xen/control/control.c b/sys/dev/xen/control/control.c
 index 35c923d..78894ba 100644
 --- a/sys/dev/xen/control/control.c
 +++ b/sys/dev/xen/control/control.c
 @@ -158,7 +158,6 @@ static xctrl_shutdown_handler_t xctrl_poweroff;
  static xctrl_shutdown_handler_t xctrl_reboot;
  static xctrl_shutdown_handler_t xctrl_suspend;
  static xctrl_shutdown_handler_t xctrl_crash;
 -static xctrl_shutdown_handler_t xctrl_halt;
  
  /*-------------------------- Private Data Structures -------------------------*/
  /** Element type for lookup table of event name to handler. */
 @@ -173,7 +172,7 @@ static const struct xctrl_shutdown_reason xctrl_shutdown_reasons[] = {
  	{ "reboot",   xctrl_reboot   },
  	{ "suspend",  xctrl_suspend  },
  	{ "crash",    xctrl_crash    },
 -	{ "halt",     xctrl_halt     },
 +	{ "halt",     xctrl_poweroff },
  };
  
  struct xctrl_softc {
 @@ -427,12 +426,6 @@ xctrl_crash()
  }
  
  static void
 -xctrl_halt()
 -{
 -	shutdown_nice(RB_HALT);
 -}
 -
 -static void
  xen_pv_shutdown_final(void *arg, int howto)
  {
  	/*



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310211520.r9LFK12g076844>