From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Ian.Campbell@citrix.com, xen-devel@lists.xenproject.org,
linux-kernel@vger.kernel.org, JBeulich@suse.com,
david.vrabel@citrix.com
Subject: Re: [PATCH 2/4] xen/manage: Poweroff forcefully if user-space is not yet up.
Date: Wed, 20 Nov 2013 16:11:40 -0500 [thread overview]
Message-ID: <528D258C.1020102@oracle.com> (raw)
In-Reply-To: <1383932286-25080-3-git-send-email-konrad.wilk@oracle.com>
On 11/08/2013 12:38 PM, Konrad Rzeszutek Wilk wrote:
> The user can launch the guest in this sequence:
>
> xl create -p /vm.cfg [launch, but pause it]
> xl shutdown latest [sets control/shutdown=poweroff]
> xl unpause latest
> xl console latest [and see that the guest has completely
> ignored the shutdown request]
>
> In reality the guest hasn't ignored it. It registers a watch
> and gets a notification that there is value. It then calls
> the shutdown_handler which ends up calling orderly_shutdown.
>
> Unfortunately that is so early in the bootup that there
> are no user-space. Which means that the orderly_shutdown fails.
> But since the force flag was set to false it continues on without
> reporting.
>
> We check if the system is still in the booting stage and if so
> enable the force option (which will shutdown in early bootup
> process). If in normal running case we don't force it.
>
> Fixes-Bug: http://bugs.xenproject.org/xen/bug/6
> Reported-by: Alex Bligh <alex@alex.org.uk>
> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> [v2: Add switch statement]
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> ---
> drivers/xen/manage.c | 13 ++++++++++++-
> 1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/xen/manage.c b/drivers/xen/manage.c
> index 624e8dc..3f8496c 100644
> --- a/drivers/xen/manage.c
> +++ b/drivers/xen/manage.c
> @@ -185,7 +185,18 @@ struct shutdown_handler {
> static void do_poweroff(void)
> {
> shutting_down = SHUTDOWN_POWEROFF;
> - orderly_poweroff(false);
> + switch (system_state) {
> + case SYSTEM_BOOTING:
> + orderly_poweroff(true);
> + break;
> + case SYSTEM_RUNNING:
> + orderly_poweroff(false);
> + break;
> + default:
> + /* Don't do it when we are halting/rebooting. */
> + pr_info("Ignoring Xen toolstack shutdown.\n");
> + break;
> + }
> }
>
> static void do_reboot(void)
next prev parent reply other threads:[~2013-11-20 21:09 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-08 17:38 [PATCH] Fixes to Linux v3.13 - bugs.xenproject.org ones. (v1) Konrad Rzeszutek Wilk
2013-11-08 17:38 ` [PATCH 1/4] xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved for MCFG areas Konrad Rzeszutek Wilk
2013-11-08 17:38 ` Konrad Rzeszutek Wilk
2013-11-21 10:37 ` David Vrabel
2013-11-21 10:37 ` David Vrabel
2013-11-08 17:38 ` [PATCH 2/4] xen/manage: Poweroff forcefully if user-space is not yet up Konrad Rzeszutek Wilk
2013-11-20 21:11 ` Boris Ostrovsky
2013-11-20 21:11 ` Boris Ostrovsky [this message]
2013-11-21 11:33 ` David Vrabel
2013-11-26 16:47 ` Konrad Rzeszutek Wilk
2013-11-26 16:47 ` Konrad Rzeszutek Wilk
2014-04-01 15:43 ` Konrad Rzeszutek Wilk
2014-04-01 15:43 ` Konrad Rzeszutek Wilk
2013-11-21 11:33 ` David Vrabel
2013-11-08 17:38 ` Konrad Rzeszutek Wilk
2013-11-08 17:38 ` [PATCH 3/4] xen/manage: Guard against user-space initiated poweroff and XenBus Konrad Rzeszutek Wilk
2013-11-08 17:38 ` Konrad Rzeszutek Wilk
2013-11-20 21:40 ` Boris Ostrovsky
2013-11-20 21:40 ` Boris Ostrovsky
2013-11-21 11:09 ` David Vrabel
2013-11-21 11:09 ` David Vrabel
2013-11-26 16:45 ` Konrad Rzeszutek Wilk
2013-12-02 11:27 ` David Vrabel
2013-12-02 11:27 ` David Vrabel
2014-03-31 19:09 ` Konrad Rzeszutek Wilk
2014-03-31 19:09 ` Konrad Rzeszutek Wilk
2013-11-26 16:45 ` Konrad Rzeszutek Wilk
2014-04-01 13:18 ` David Vrabel
2014-04-01 13:18 ` David Vrabel
2014-04-01 14:03 ` Konrad Rzeszutek Wilk
2014-04-01 14:03 ` Konrad Rzeszutek Wilk
2013-11-08 17:38 ` [PATCH 4/4] xen/xenbus: Avoid synchronous wait on XenBus stalling shutdown/restart Konrad Rzeszutek Wilk
2013-11-08 17:38 ` Konrad Rzeszutek Wilk
2013-11-21 17:52 ` [Xen-devel] " David Vrabel
2013-11-22 9:30 ` Ian Campbell
2013-11-22 9:30 ` [Xen-devel] " Ian Campbell
2013-11-22 9:45 ` Processed: " xen
2013-11-26 16:50 ` [Xen-devel] " Konrad Rzeszutek Wilk
2013-12-02 11:41 ` David Vrabel
2013-12-02 11:41 ` [Xen-devel] " David Vrabel
2014-03-31 20:33 ` Konrad Rzeszutek Wilk
2014-03-31 20:33 ` [Xen-devel] " Konrad Rzeszutek Wilk
2014-04-01 12:53 ` David Vrabel
2014-04-01 12:53 ` David Vrabel
2013-11-26 16:50 ` Konrad Rzeszutek Wilk
2013-11-21 17:52 ` David Vrabel
2014-01-26 1:13 ` [Xen-devel] " Zhang, Yang Z
2014-01-26 3:44 ` Konrad Rzeszutek Wilk
2014-01-26 3:44 ` Konrad Rzeszutek Wilk
2014-01-26 1:13 ` Zhang, Yang Z
2014-04-03 11:59 ` [PATCH] Fixes to Linux v3.13 - bugs.xenproject.org ones. (v1) David Vrabel
2014-04-03 11:59 ` David Vrabel
2014-04-03 18:07 ` Konrad Rzeszutek Wilk
2014-04-03 18:07 ` Konrad Rzeszutek Wilk
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=528D258C.1020102@oracle.com \
--to=boris.ostrovsky@oracle.com \
--cc=Ian.Campbell@citrix.com \
--cc=JBeulich@suse.com \
--cc=david.vrabel@citrix.com \
--cc=konrad.wilk@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--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.