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
next prev 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 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.