All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Daniel Kiper <daniel.kiper@oracle.com>
Cc: kexec@lists.infradead.org, David Vrabel <david.vrabel@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	xen-devel@lists.xen.org
Subject: Re: [Xen-devel] [PATCHv10 0/9] Xen: extend kexec hypercall for use with pv-ops kernels
Date: Thu, 7 Nov 2013 21:57:05 +0000	[thread overview]
Message-ID: <527C0CB1.6000804@citrix.com> (raw)
In-Reply-To: <20131107214138.GD11159@olila.local.net-space.pl>

On 07/11/2013 21:41, Daniel Kiper wrote:
> On Thu, Nov 07, 2013 at 09:25:33PM +0000, Andrew Cooper wrote:
>> On 07/11/13 21:16, Daniel Kiper wrote:
>>> On Wed, Nov 06, 2013 at 02:49:37PM +0000, David Vrabel wrote:
>>>> The series (for Xen 4.4) improves the kexec hypercall by making Xen
>>>> responsible for loading and relocating the image.  This allows kexec
>>>> to be usable by pv-ops kernels and should allow kexec to be usable
>>>> from a HVM or PVH privileged domain.
>>>>
>>>> I have now tested this with a Linux kernel image using the VGA console
>>>> which was what was causing problems in v9 (this turned out to be a
>>>> kexec-tools bug).
>>>>
>>>> The required patch series for kexec-tools will be posted shortly and
>>>> are available from the xen-v7 branch of:
>>> In general it works. However, quite often I am not able to execute panic
>>> kernel. Machine hangs with following message:
>>>
>>> (XEN) Domain 0 crashed: Executing crash image
>>>
>>> gdb shows:
>>>
>>> (gdb) bt
>>> #0  0xffff82d0801a0092 in do_nmi_crash (regs=<optimized out>) at crash.c:113
>>> #1  0xffff82d0802281d9 in nmi_crash () at entry.S:666
>>> #2  0x0000000000000000 in ?? ()
>>> (gdb)
>>>
>>> Especially second bt line scares me... ;-)))
>> Why? This is completely normal.  If you look in crash.c at that line, it
>> is a for (;;) halt(); loop
> I thought more about this:
>
> #1  0xffff82d0802281d9 in nmi_crash () at entry.S:666
>
> Look at the end of this line... ;-)))

Which line and what about it?  In current master, that is a SAVE_ALL,
but as the call to do_nmi_crash has happened, I presume
0xffff82d0802281d9 is a ud2 instruction in your tree?

>
>> How are you hooking gdb up?
> I am doing tests in QEMU and using QEMU's -gdb option.
>
>>> I have not been able to identify why NMI was activated because
>>> stack is completely cleared. I tried to record execution in gdb
>>> but it stops with following message:
>> NMIs are used for cpu shootdown of the non-crashing cpus.  Again, this
>> is not touched by the series.
> Ahh... It makes sens. However, why machine hangs at this stage? Hmmm...
> CPU sending NMIs receives one and instead of ignoring it halts itself?
>
> Daniel

No - there is very clear protection from racing down the crash path. 
The crashing CPU forces all other cpus into nmi_crash(), where they will
stay until reset.

It is the one cpu which is not executing nmi_crash() which will end up
executing the crash image.

~Andrew

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  parent reply	other threads:[~2013-11-07 21:57 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-06 14:49 [PATCHv10 0/9] Xen: extend kexec hypercall for use with pv-ops kernels David Vrabel
2013-11-06 14:49 ` [PATCH 1/9] x86: give FIX_EFI_MPF its own fixmap entry David Vrabel
2013-11-06 14:49 ` David Vrabel
2013-11-06 18:49   ` Don Slutz
2013-11-06 18:49   ` [Xen-devel] " Don Slutz
2013-11-06 14:49 ` [PATCH 2/9] kexec: add public interface for improved load/unload sub-ops David Vrabel
2013-11-06 14:49 ` David Vrabel
2013-11-07 20:38   ` Don Slutz
2013-11-07 20:38   ` Don Slutz
2013-11-06 14:49 ` [PATCH 3/9] kexec: add infrastructure for handling kexec images David Vrabel
2013-11-07 20:40   ` Don Slutz
2013-11-07 20:40   ` [Xen-devel] " Don Slutz
2013-11-07 23:51     ` Don Slutz
2013-11-07 23:51       ` Don Slutz
2013-11-08 12:50   ` [PATCHv11 " David Vrabel
2013-11-11 14:37     ` Don Slutz
2013-11-15 14:35     ` Jan Beulich
2013-11-15 18:31       ` David Vrabel
2013-11-18  8:07         ` Jan Beulich
2013-11-18 11:04           ` David Vrabel
2013-11-18 11:34             ` Jan Beulich
2013-11-18 12:25               ` Daniel Kiper
2013-11-18 12:53                 ` Jan Beulich
2013-11-18 13:24                   ` Daniel Kiper
2013-11-18 13:43                     ` Jan Beulich
2013-11-18 14:23                       ` Daniel Kiper
2013-11-18 15:24                         ` Jan Beulich
2013-11-18 21:50                           ` Daniel Kiper
2013-11-19 12:40                             ` Jan Beulich
2013-11-20 19:59                               ` Daniel Kiper
2013-11-21 16:19                                 ` Jan Beulich
2013-11-18 11:43             ` Daniel Kiper
2013-11-06 14:49 ` [PATCH " David Vrabel
2013-11-06 14:49 ` [PATCH 4/9] kexec: extend hypercall with improved load/unload ops David Vrabel
2013-11-06 14:49   ` David Vrabel
2013-11-07 20:56   ` [Xen-devel] " Don Slutz
2013-11-07 20:56     ` Don Slutz
2013-11-06 14:49 ` [PATCH 5/9] xen: kexec crash image when dom0 crashes David Vrabel
2013-11-07 20:44   ` Don Slutz
2013-11-07 20:44   ` [Xen-devel] " Don Slutz
2013-11-06 14:49 ` David Vrabel
2013-11-06 14:49 ` [PATCH 6/9] libxc: add hypercall buffer arrays David Vrabel
2013-11-06 14:49 ` David Vrabel
2013-11-07 20:46   ` [Xen-devel] " Don Slutz
2013-11-07 20:46   ` Don Slutz
2013-11-06 14:49 ` [PATCH 7/9] libxc: add API for kexec hypercall David Vrabel
2013-11-06 14:49 ` David Vrabel
2013-11-07 20:48   ` Don Slutz
2013-11-07 20:48   ` Don Slutz
2013-11-06 14:49 ` [PATCH 8/9] x86: check kexec relocation code fits in a page David Vrabel
2013-11-06 18:51   ` Don Slutz
2013-11-06 18:51   ` [Xen-devel] " Don Slutz
2013-11-06 14:49 ` David Vrabel
2013-11-06 14:49 ` [PATCH 9/9] MAINTAINERS: Add KEXEC maintainer David Vrabel
2013-11-06 18:50   ` Don Slutz
2013-11-06 18:50   ` Don Slutz
2013-11-06 14:49 ` David Vrabel
2013-11-07 21:16 ` [PATCHv10 0/9] Xen: extend kexec hypercall for use with pv-ops kernels Daniel Kiper
2013-11-07 21:25   ` Andrew Cooper
2013-11-07 21:25   ` [Xen-devel] " Andrew Cooper
2013-11-07 21:41     ` Daniel Kiper
2013-11-07 21:57       ` Andrew Cooper
2013-11-07 21:57       ` Andrew Cooper [this message]
2013-11-08 13:20       ` David Vrabel
2013-11-08 13:20       ` [Xen-devel] " David Vrabel
2013-11-07 21:41     ` Daniel Kiper
2013-11-08 13:13   ` David Vrabel
2013-11-08 13:19     ` Jan Beulich
2013-11-08 14:01       ` Andrew Cooper
2013-11-08 14:01       ` [Xen-devel] " Andrew Cooper
2013-11-08 14:22         ` Don Slutz
2013-11-08 14:22         ` [Xen-devel] " Don Slutz
2013-11-08 14:36         ` Jan Beulich
2013-11-08 14:36         ` Jan Beulich
2013-11-08 15:15         ` Daniel Kiper
2013-11-08 15:15         ` [Xen-devel] " Daniel Kiper
2013-11-08 15:42           ` Konrad Rzeszutek Wilk
2013-11-08 16:28             ` Daniel Kiper
2013-11-08 16:28             ` [Xen-devel] " Daniel Kiper
2013-11-08 15:42           ` Konrad Rzeszutek Wilk
2013-11-08 15:48           ` [Xen-devel] " Andrew Cooper
2013-11-08 15:48           ` Andrew Cooper
2013-11-08 13:19     ` Jan Beulich
2013-11-08 13:48     ` Daniel Kiper
2013-11-08 14:01       ` Andrew Cooper
2013-11-08 14:01       ` [Xen-devel] " Andrew Cooper
2013-11-08 13:48     ` Daniel Kiper
2013-11-08 15:04     ` Daniel Kiper
2013-11-08 15:04     ` Daniel Kiper
2013-11-08 13:13   ` David Vrabel
2013-11-09 19:18   ` Daniel Kiper
2013-11-11 14:34     ` Don Slutz
2013-11-11 14:34     ` Don Slutz
2013-11-11 15:09     ` David Vrabel
2013-11-11 15:09     ` David Vrabel
2013-11-09 19:18   ` Daniel Kiper
2013-11-07 21:16 ` Daniel Kiper
2013-11-11 17:18 ` [Xen-devel] " Keir Fraser
2013-11-11 17:18 ` Keir Fraser

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=527C0CB1.6000804@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=daniel.kiper@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=kexec@lists.infradead.org \
    --cc=xen-devel@lists.xen.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.