All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Vitaly Kuznetsov <vkuznets@redhat.com>
Cc: Wei Liu <wei.liu2@citrix.com>, Andrew Jones <drjones@redhat.com>,
	Keir Fraser <keir@xen.org>,
	Ian Campbell <ian.campbell@citrix.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Julien Grall <julien.grall@linaro.org>,
	Ian Jackson <ian.jackson@eu.citrix.com>,
	Olaf Hering <olaf@aepfle.de>, Tim Deegan <tim@xen.org>,
	David Vrabel <david.vrabel@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	xen-devel@lists.xenproject.org,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v10 02/11] libxl: support SHUTDOWN_soft_reset shutdown reason
Date: Tue, 11 Aug 2015 15:54:29 -0400	[thread overview]
Message-ID: <20150811195429.GA7765@l.oracle.com> (raw)
In-Reply-To: <1438090096-8297-3-git-send-email-vkuznets@redhat.com>

On Tue, Jul 28, 2015 at 03:28:07PM +0200, Vitaly Kuznetsov wrote:
> Use letter 'S' to indicate a domain in such state. Introduce new
> 'on_soft_reset' action and default it to 'restart' for now.
> 
> Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>

Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> ---
> Changes since v9:
> - None
> ---
>  docs/man/xl.cfg.pod.5             |  5 +++++
>  tools/libxl/libxl_types.idl       |  2 ++
>  tools/libxl/xl_cmdimpl.c          | 12 +++++++++++-
>  tools/python/xen/lowlevel/xl/xl.c |  1 +
>  4 files changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
> index c78c3ba..69935d9 100644
> --- a/docs/man/xl.cfg.pod.5
> +++ b/docs/man/xl.cfg.pod.5
> @@ -364,6 +364,11 @@ Default is C<destroy>.
>  
>  Action to take if the domain crashes.  Default is C<destroy>.
>  
> +=item B<on_soft_reset="ACTION">
> +
> +Action to take if the domain performs 'soft reset' (e.g. does kexec).
> +Default is C<restart>.
> +
>  =back
>  
>  =head3 Direct Kernel Boot
> diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
> index ef346e7..9f6ec00 100644
> --- a/tools/libxl/libxl_types.idl
> +++ b/tools/libxl/libxl_types.idl
> @@ -192,6 +192,7 @@ libxl_shutdown_reason = Enumeration("shutdown_reason", [
>      (2, "suspend"),
>      (3, "crash"),
>      (4, "watchdog"),
> +    (5, "soft_reset"),
>      ], init_val = "LIBXL_SHUTDOWN_REASON_UNKNOWN")
>  
>  libxl_vga_interface_type = Enumeration("vga_interface_type", [
> @@ -637,6 +638,7 @@ libxl_domain_config = Struct("domain_config", [
>      ("on_reboot", libxl_action_on_shutdown),
>      ("on_watchdog", libxl_action_on_shutdown),
>      ("on_crash", libxl_action_on_shutdown),
> +    ("on_soft_reset", libxl_action_on_shutdown),
>      ], dir=DIR_IN)
>  
>  libxl_diskinfo = Struct("diskinfo", [
> diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
> index d0bf0cb..fcd30e9 100644
> --- a/tools/libxl/xl_cmdimpl.c
> +++ b/tools/libxl/xl_cmdimpl.c
> @@ -1395,6 +1395,13 @@ static void parse_config_data(const char *config_source,
>          exit(1);
>      }
>  
> +    if (xlu_cfg_get_string (config, "on_soft_reset", &buf, 0))
> +        buf = "restart";
> +    if (!parse_action_on_shutdown(buf, &d_config->on_soft_reset)) {
> +        fprintf(stderr, "Unknown on_soft_reset action \"%s\" specified\n", buf);
> +        exit(1);
> +    }
> +
>      /* libxl_get_required_shadow_memory() must be called after final values
>       * (default or specified) for vcpus and memory are set, because the
>       * calculation depends on those values. */
> @@ -2415,6 +2422,9 @@ static int handle_domain_death(uint32_t *r_domid,
>      case LIBXL_SHUTDOWN_REASON_WATCHDOG:
>          action = d_config->on_watchdog;
>          break;
> +    case LIBXL_SHUTDOWN_REASON_SOFT_RESET:
> +        action = d_config->on_soft_reset;
> +        break;
>      default:
>          LOG("Unknown shutdown reason code %d. Destroying domain.",
>              event->u.domain_shutdown.shutdown_reason);
> @@ -3835,7 +3845,7 @@ static void list_domains(bool verbose, bool context, bool claim, bool numa,
>                           bool cpupool, const libxl_dominfo *info, int nb_domain)
>  {
>      int i;
> -    static const char shutdown_reason_letters[]= "-rscw";
> +    static const char shutdown_reason_letters[]= "-rscwS";
>      libxl_bitmap nodemap;
>      libxl_physinfo physinfo;
>  
> diff --git a/tools/python/xen/lowlevel/xl/xl.c b/tools/python/xen/lowlevel/xl/xl.c
> index 32f982a..7c61160 100644
> --- a/tools/python/xen/lowlevel/xl/xl.c
> +++ b/tools/python/xen/lowlevel/xl/xl.c
> @@ -784,6 +784,7 @@ PyMODINIT_FUNC initxl(void)
>      _INT_CONST_LIBXL(m, SHUTDOWN_REASON_SUSPEND);
>      _INT_CONST_LIBXL(m, SHUTDOWN_REASON_CRASH);
>      _INT_CONST_LIBXL(m, SHUTDOWN_REASON_WATCHDOG);
> +    _INT_CONST_LIBXL(m, SHUTDOWN_REASON_SOFT_RESET);
>  
>      genwrap__init(m);
>  }
> -- 
> 2.4.3
> 

  reply	other threads:[~2015-08-11 19:54 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-28 13:28 [PATCH v10 00/11] toolstack-assisted approach to PVHVM guest kexec Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 01/11] xen: introduce SHUTDOWN_soft_reset shutdown reason Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 02/11] libxl: support " Vitaly Kuznetsov
2015-08-11 19:54   ` Konrad Rzeszutek Wilk [this message]
2015-08-31 14:04   ` Wei Liu
2015-07-28 13:28 ` [PATCH v10 03/11] xl: introduce enum domain_restart_type Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 04/11] xen: evtchn: make evtchn_reset() ready for soft reset Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 05/11] xen: grant_table: implement grant_table_warn_active_grants() Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 06/11] xen: Introduce XEN_DOMCTL_soft_reset Vitaly Kuznetsov
2015-08-11 19:57   ` Konrad Rzeszutek Wilk
2015-08-12  8:41     ` Jan Beulich
2015-08-12  9:19       ` Vitaly Kuznetsov
2015-08-12  9:43         ` Jan Beulich
2015-07-28 13:28 ` [PATCH v10 07/11] flask: DOMCTL_soft_reset support Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 08/11] xen: arch-specific hooks for domain_soft_reset() Vitaly Kuznetsov
2015-08-11 19:59   ` Konrad Rzeszutek Wilk
2015-08-17 15:38   ` Jan Beulich
2015-09-01 16:10   ` Ian Campbell
2015-07-28 13:28 ` [PATCH v10 09/11] libxc: support XEN_DOMCTL_soft_reset operation Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 10/11] libxc: add XC_DEVICE_MODEL_SAVE_FILE Vitaly Kuznetsov
2015-07-28 13:28 ` [PATCH v10 11/11] (lib)xl: soft reset support Vitaly Kuznetsov
2015-08-11 20:04   ` Konrad Rzeszutek Wilk
2015-08-31 14:14   ` Wei Liu
2015-09-01 11:52     ` Vitaly Kuznetsov
2015-09-01 17:26     ` Vitaly Kuznetsov
2015-09-01 17:30       ` Wei Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150811195429.GA7765@l.oracle.com \
    --to=konrad.wilk@oracle.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=david.vrabel@citrix.com \
    --cc=dgdegra@tycho.nsa.gov \
    --cc=drjones@redhat.com \
    --cc=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=julien.grall@linaro.org \
    --cc=keir@xen.org \
    --cc=olaf@aepfle.de \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=tim@xen.org \
    --cc=vkuznets@redhat.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.