xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Daniel Kiper <dkiper@net-space.pl>,
	David Vrabel <david.vrabel@citrix.com>
Cc: "daniel.kiper@oracle.com" <daniel.kiper@oracle.com>,
	"Keir (Xen.org)" <keir@xen.org>, Jan Beulich <jbeulich@suse.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [PATCHv9 0/9] Xen: extend kexec hypercall for use with pv-ops kernels
Date: Sat, 19 Oct 2013 00:42:38 +0100	[thread overview]
Message-ID: <5261C76E.4090409@citrix.com> (raw)
In-Reply-To: <20131018184031.GA12658@router-fw-old.local.net-space.pl>

On 18/10/2013 19:40, Daniel Kiper wrote:
> On Tue, Oct 08, 2013 at 05:55:01PM +0100, 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 could not load panic image because Xen crashes in following way:
>
> (XEN) ----[ Xen-4.4-unstable  x86_64  debug=y  Tainted:    C ]----
> (XEN) CPU:    3
> (XEN) RIP:    e008:[<ffff82d080114ef2>] kimage_free+0x67/0xd2
> (XEN) RFLAGS: 0000000000010286   CONTEXT: hypervisor
> (XEN) rax: ffff820040037000   rbx: f000ff53f000e2c3   rcx: 0000000000000037
> (XEN) rdx: ffff820040000000   rsi: 0000000000000040   rdi: ffff83007faea1d8
> (XEN) rbp: ffff83007fae7d48   rsp: ffff83007fae7d28   r8: fffffffffffffe31
> (XEN) r9:  0000000000000009   r10: 0000000000000282   r11: 0000000000bfd000
> (XEN) r12: ffff820040037000   r13: f000ff53f000e2c3   r14: ffff830076b1df20
> (XEN) r15: 0000000013bfd000   cr0: 0000000080050033   cr4: 00000000000026f0
> (XEN) cr3: 0000000076389000   cr2: ffff820040037000
> (XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e010   cs: e008
> (XEN) Xen stack trace from rsp=ffff83007fae7d28:
> (XEN)    ffff830076b1df20 00000000ffffff9d ffff830076b1de50 0000000000000001
> (XEN)    ffff83007fae7d98 ffff82d0801151f9 0000000000000010 ffff83007fae7de0
> (XEN)    00000000000000c0 ffff83007fae7de0 000000000000003e 0000000013f4f720
> (XEN)    ffff880039c56b50 0000000000000000 ffff83007fae7dc8 ffff82d0801152fe
> (XEN)    ffff83007fae7dc8 00000000fffffff2 ffff830076b1de50 00007fff4a4391f0
> (XEN)    ffff83007fae7ee8 ffff82d0801144c0 ffff83007fae7ef8 0000000000000000
> (XEN)    ffff83007fae7e48 ffff82d08011d7d2 ffff83007fae7e18 ffff82d080270d20
> (XEN)    ffff83007fad9060 0000000000075a0c 0000000000000000 ffff83007fad9000
> (XEN)    ffff820040035000 00007ff000000003 00000006003e0001 00007fbf8d9b0004
> (XEN)    0000000013f4f720 ffff83007faea000 ffff83007fae7e68 ffff82d08016fa43
> (XEN)    ffff83007fae7e88 ffff82d080221348 ffff83007faea000 ffff83007fae7f18
> (XEN)    ffff83007fae7ef8 ffff82d0802214a8 000000000af2f749 0000000000000000
> (XEN)    0000000000000217 00007fbf8cfd5577 0000000000000100 00007fbf8cfd5577
> (XEN)    ffff83007fae7ed8 ffff82d08016fa43 ffff83007fad9000 0000000000000003
> (XEN)    ffff83007fae7ef8 ffff82d0801145c9 00007cff805180c7 ffff82d0802268cb
> (XEN)    ffffffff810014aa 0000000000000025 0000000000000000 00007fff4a439270
> (XEN)    00000000000000a0 00007fbf8d9b1000 ffff88003951dea8 ffff880039912c00
> (XEN)    0000000000000286 000000000155d850 0000000000200000 0000000013f4f720
> (XEN)    0000000000000025 ffffffff810014aa 00007fbf8d8faa55 00007fbf8d9af004
> (XEN)    0000000000000004 0001010000000000 ffffffff810014aa 000000000000e033
> (XEN) Xen call trace:
> (XEN)    [<ffff82d080114ef2>] kimage_free+0x67/0xd2
> (XEN)    [<ffff82d0801151f9>] do_kimage_alloc+0x29c/0x2f0
> (XEN)    [<ffff82d0801152fe>] kimage_alloc+0xb1/0xe6
> (XEN)    [<ffff82d0801144c0>] do_kexec_op_internal+0x68e/0x789
> (XEN)    [<ffff82d0801145c9>] do_kexec_op+0xe/0x12
> (XEN)    [<ffff82d0802268cb>] syscall_enter+0xeb/0x145
> (XEN)
> (XEN) Pagetable walk from ffff820040037000:
> (XEN)  L4[0x104] = 000000007ffd0063 ffffffffffffffff
> (XEN)  L3[0x001] = 000000007ffce063 ffffffffffffffff
> (XEN)  L2[0x000] = 000000007ffc5063 ffffffffffffffff
> (XEN)  L1[0x037] = f000ff53f000e063 ffffffffffffffff
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 3:
> (XEN) FATAL PAGE FAULT
> (XEN) [error_code=0009]
> (XEN) Faulting linear address: ffff820040037000
> (XEN) ****************************************
>
> Normal kernel could be loaded but when it is executed something
> crashes very early. Following message is displayed
>
> I'm in purgatory
> early console in decompress_kernel
>
> and machine is restarted shortly.
>
> I have done tests with latest kexec-tools and Xen versions.
>
> Daniel

David - this looks curiously like the double-free crash I fixed on v6 in
XenServer.  Did you remember to merge the patch into your series?

Daniel: Your tests show that the new load kernel is in control of the
machine.  The restart is therefore a bug in whichever kernel you used,
presumably making some false assumption about the state of the machine.

~Andrew

  parent reply	other threads:[~2013-10-18 23:42 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-08 16:55 [PATCHv9 0/9] Xen: extend kexec hypercall for use with pv-ops kernels David Vrabel
2013-10-08 16:55 ` [PATCH 1/9] x86: give FIX_EFI_MPF its own fixmap entry David Vrabel
2013-10-08 16:55 ` [PATCH 2/9] kexec: add public interface for improved load/unload sub-ops David Vrabel
2013-10-08 16:55 ` [PATCH 3/9] kexec: add infrastructure for handling kexec images David Vrabel
2013-11-05 22:39   ` Don Slutz
2013-11-06  8:12     ` Jan Beulich
2013-10-08 16:55 ` [PATCH 4/9] kexec: extend hypercall with improved load/unload ops David Vrabel
2013-11-05 22:43   ` Don Slutz
2013-10-08 16:55 ` [PATCH 5/9] xen: kexec crash image when dom0 crashes David Vrabel
2013-10-08 16:55 ` [PATCH 6/9] libxc: add hypercall buffer arrays David Vrabel
2013-10-08 16:55 ` [PATCH 7/9] libxc: add API for kexec hypercall David Vrabel
2013-10-08 16:55 ` [PATCH 8/9] x86: check kexec relocation code fits in a page David Vrabel
2013-10-08 16:55 ` [PATCH 9/9] MAINTAINERS: Add KEXEC maintainer David Vrabel
2013-10-08 17:03 ` [PATCHv9 0/9] Xen: extend kexec hypercall for use with pv-ops kernels Andrew Cooper
2013-10-09 15:26 ` Daniel Kiper
2013-10-09 15:52   ` Andrew Cooper
2013-10-09 16:03   ` David Vrabel
2013-10-10 15:45     ` Daniel Kiper
2013-10-10 16:35       ` David Vrabel
2013-10-10 21:24         ` Daniel Kiper
2013-10-11  6:49           ` Jan Beulich
2013-10-11  8:58             ` Daniel Kiper
2013-10-11  9:56             ` David Vrabel
2013-10-11 11:15               ` Daniel Kiper
2013-10-11 14:06                 ` David Vrabel
2013-10-14 13:53                   ` Daniel Kiper
2013-10-14 14:14                     ` David Vrabel
2013-10-14 18:13                       ` Daniel Kiper
2013-10-16 21:09                         ` Daniel Kiper
2013-11-14 11:20                         ` Daniel Kiper
2013-11-14 11:27                           ` David Vrabel
2013-10-18 18:40 ` Daniel Kiper
2013-10-18 23:14   ` David Vrabel
2013-10-21 12:19     ` Daniel Kiper
2013-10-21 12:56       ` David Vrabel
2013-10-21 20:20         ` Daniel Kiper
2013-10-25  9:13           ` Daniel Kiper
2013-10-25 23:04             ` David Vrabel
2013-10-30 16:57           ` David Vrabel
2013-10-31 16:59             ` Don Slutz
2013-10-31 18:30               ` David Vrabel
2013-10-31 20:23                 ` Don Slutz
2013-10-31 22:21                 ` Daniel Kiper
2013-11-05 17:41                   ` Daniel Kiper
2013-11-05 18:01                     ` David Vrabel
2013-10-18 23:42   ` Andrew Cooper [this message]
2013-10-21  3:11 ` Xu, YongweiX
2013-10-21 10:21   ` David Vrabel
2013-10-21 12:26     ` David Vrabel

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=5261C76E.4090409@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=daniel.kiper@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=dkiper@net-space.pl \
    --cc=jbeulich@suse.com \
    --cc=keir@xen.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).