All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: "Vladimir 'φ-coder/phcoder' Serbinenko" <phcoder@gmail.com>,
	"Ian Campbell" <ian.campbell@citrix.com>,
	grub-devel@gnu.org
Cc: Andreas Sundstrom <sunkan+lists.xen-devel@zappa.cx>,
	xen-devel@lists.xen.org
Subject: Re: [Xen-devel] [BUG] XEN domU crash when PV grub chainloads 32-bit domU grub
Date: Fri, 22 Jan 2016 13:43:31 +0000	[thread overview]
Message-ID: <56A23203.4000902@citrix.com> (raw)
In-Reply-To: <56A229DA.7030904@gmail.com>

On 22/01/16 13:08, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> On 22.01.2016 14:01, Andrew Cooper wrote:
>> On 22/01/16 12:56, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
>>> On 22.09.2015 10:53, Ian Campbell wrote:
>>>> Hi Vladimir & grub-devel,
>>>>
>>>> Do you have any thoughts on this issue with i386 pv-grub2?
>>>>
>>> Is it still an issue? If so I'll try to replicate it. From stack dump I
>>> see that it has jumped to NULL. GRUB has no threads so it's not a race
>>> condition with itself but may be one with some Xen part. An altrnative
>>> possibility is that grub forgets to flush cache at some point in boot
>>> process.
>> Looks like GRUB doesn't have a traptable registered with Xen (the PV
>> equivalent of the IDT).
>>
>> First, Xen tried to inject a #GP fault and found that the entry EIP was
>> at 0 (which is sadly the default if nothing is specified).  It then took
>> a pagefault while attempting to inject the #GP, and crashed the domain.
>>
> Do you have a link how to add one? We can put a catch-stacktrace-abort
> on it.

This is from my microkernel framework, and is probably the most succinct
code implementation:

http://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen-test-framework.git;a=blob;f=arch/x86/pv/traps.c;h=7f9a1908d260659c10f5cbb1d2d234c9fea1edb5;hb=HEAD#l31

The hypercall ABI documentation is:

http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/include/public/arch-x86/xen.h;h=cdd93c1c6446a92e89188c6a5132538188825d27;hb=refs/heads/staging#l126

~Andrew


  reply	other threads:[~2016-01-22 13:43 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-21 20:03 [BUG] XEN domU crash when PV grub chainloads 32-bit domU grub Andreas Sundstrom
2015-09-22  7:22 ` Andrew Cooper
2015-09-22  8:52   ` Ian Campbell
2015-09-22 13:26   ` Andreas Sundstrom
2015-09-22  8:53 ` Ian Campbell
2015-09-22  8:53 ` [Xen-devel] " Ian Campbell
2016-01-22 12:56   ` Vladimir 'φ-coder/phcoder' Serbinenko
2016-01-22 12:56   ` [Xen-devel] " Vladimir 'φ-coder/phcoder' Serbinenko
2016-01-22 13:01     ` Andrew Cooper
2016-01-22 13:01     ` [Xen-devel] " Andrew Cooper
2016-01-22 13:08       ` Vladimir 'φ-coder/phcoder' Serbinenko
2016-01-22 13:08       ` [Xen-devel] " Vladimir 'φ-coder/phcoder' Serbinenko
2016-01-22 13:43         ` Andrew Cooper [this message]
2016-01-22 13:43         ` Andrew Cooper
2016-01-22 17:44     ` [Xen-devel] " Andreas Sundstrom
2016-01-22 17:44       ` Andreas Sundstrom
2015-09-22 22:37 ` Samuel Thibault
2015-09-23  8:34   ` Ian Campbell
2015-09-23 12:47     ` Andreas Sundstrom
2015-09-23 14:18       ` Ian Campbell
2015-09-24 17:28         ` Andreas Sundstrom
2015-09-25  8:36           ` Ian Campbell
2015-09-25 13:23             ` Andreas Sundstrom
2015-09-23  8:37   ` Andreas Sundstrom

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=56A23203.4000902@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=grub-devel@gnu.org \
    --cc=ian.campbell@citrix.com \
    --cc=phcoder@gmail.com \
    --cc=sunkan+lists.xen-devel@zappa.cx \
    --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.