All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Jan Beulich <JBeulich@suse.com>, Ed Swierk <eswierk@skyportsystems.com>
Cc: xen-devel@lists.xen.org
Subject: Re: Crash in set_cpu_sibling_map() booting Xen 4.6.0 on Fusion
Date: Fri, 20 Nov 2015 10:37:38 +0000	[thread overview]
Message-ID: <564EF7F2.6050400@citrix.com> (raw)
In-Reply-To: <564F030C02000078000B70A6@prv-mh.provo.novell.com>

On 20/11/15 10:25, Jan Beulich wrote:
>>>> On 20.11.15 at 02:22, <eswierk@skyportsystems.com> wrote:
>> (XEN) ----[ Xen-4.6.1-pre  x86_64  debug=n  Not tainted ]----
>> (XEN) CPU:    3
>> (XEN) RIP:    e008:[<ffff82d08018302f>] set_cpu_sibling_map+0x3f/0x330
>> (XEN) RFLAGS: 0000000000010006   CONTEXT: hypervisor
>> (XEN) rax: 0000000000000001   rbx: 0000000000000000   rcx: 000000313d5b4080
>> (XEN) rdx: 0000000000000006   rsi: 0000000000000000   rdi: 0000000000000003
>> (XEN) rbp: 0000000000000300   rsp: ffff8301bd87fe90   r8:  ffff8301bd878000
>> (XEN) r9:  000000313d5b4080   r10: 0000000000000001   r11: 0000000000000001
>> (XEN) r12: ffff82d0802fd500   r13: 0000000000000000   r14: 0000000000000000
>> (XEN) r15: 0000000000000003   cr0: 000000008005003b   cr4: 00000000001526a0
>> (XEN) cr3: 00000000bfc75000   cr2: 0000000000000001
>> (XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: 0000   cs: e008
>> (XEN) Xen stack trace from rsp=ffff8301bd87fe90:
>> (XEN)    00000003802fd800 0000000000000018 0000000000000000 0000010000000000
>> (XEN)    ffff82d0802fd800 0000000000000000 00000000000000c8 0000000000000003
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 ffff82d0801834dc
>> (XEN)    0000000000000000 0000000000000001 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> (XEN)    0000000000000000 0000000000000000 0000000000000003 ffff8300bfafc000
>> (XEN)    000000313d5b4080 0000000000000000
>> (XEN) Xen call trace:
>> (XEN)    [<ffff82d08018302f>] set_cpu_sibling_map+0x3f/0x330
>> (XEN)    [<ffff82d0801834dc>] start_secondary+0x1bc/0x250
>> (XEN)
>> (XEN) Pagetable walk from 0000000000000001:
>> (XEN)  L4[0x000] = 00000001bd8f0063 ffffffffffffffff
>> (XEN)  L3[0x000] = 00000001bd8ef063 ffffffffffffffff
>> (XEN)  L2[0x000] = 00000001bd8ee063 ffffffffffffffff
>> (XEN)  L1[0x000] = 0000000000000000 ffffffffffffffff
>> (XEN)
>> (XEN) ****************************************
>> (XEN) Panic on CPU 3:
>> (XEN) FATAL PAGE FAULT
>> (XEN) [error_code=0002]
>> (XEN) Faulting linear address: 0000000000000001
>> (XEN) ****************************************
>> (XEN)
>> (XEN) Reboot in five seconds...
>>
>> set_cpu_sibling_map+0x3f is the second cpumask_set_cpu() call in
>> set_cpu_sibling_map():
>> http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/x86/smpboot.c;h=0 
>> 94699286f4f6962942024ec8b2b24c7b7996cc0;hb=78833c04250416f1870c458309d3ac0e5c
>> f915fd#l261
> I suppose cpu_to_socket(cpu) returns a value for which the
> socket_cpumask[] entry didn't get set up yet. But to prove that,
> we'd need to see the disassembly around the code location
> above, to be able to associate register values with variables.
>
> If that's the case, then I'd further guess that the CPUID
> information provided by Fusion isn't exactly as one would expect
> on real hardware. Whether we need to fix something, or can
> work around a quirk of theirs depends on the exact nature of
> the issue. Instrumenting code populating socket_cpumask[]
> would be a good first step.

Might also be interesting to see the logs with "apic_verbosity=debug",
and a debug hypervisor.

~Andrew

  reply	other threads:[~2015-11-20 10:37 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-20  1:22 Crash in set_cpu_sibling_map() booting Xen 4.6.0 on Fusion Ed Swierk
2015-11-20 10:25 ` Jan Beulich
2015-11-20 10:37   ` Andrew Cooper [this message]
2015-11-20 18:53   ` Ed Swierk
2015-11-21  1:21     ` Ed Swierk
2015-11-23  1:10       ` Chao Peng
2015-11-23  5:39         ` Chao Peng
2015-11-23 10:18       ` Jan Beulich
2015-11-23 16:36         ` Ed Swierk
2015-11-24 10:34           ` Jan Beulich
2015-11-24 14:13             ` Ed Swierk
2015-11-24 15:20               ` Jan Beulich
2015-11-24 20:28                 ` Ed Swierk
2015-11-25  9:11                   ` Jan Beulich
2015-12-02 13:48                   ` Jan Beulich
2015-12-02 15:39                     ` Ed Swierk
2015-11-25  7:48             ` Chao Peng
2015-11-25  9:04               ` Jan Beulich
2015-11-25 23:27                 ` Ed Swierk
2015-11-26  7:49                   ` Jan Beulich
2015-11-27  2:11                     ` Chao Peng
2015-12-02  2:55                       ` Nakajima, Jun

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=564EF7F2.6050400@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=JBeulich@suse.com \
    --cc=eswierk@skyportsystems.com \
    --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.