public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: Christian Ehrhardt <lk@c--e.de>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>, linux-kernel@vger.kernel.org
Subject: Re: New x86-Setup code breaks HVM-XEN boot
Date: Fri, 31 Aug 2007 07:20:48 -0700	[thread overview]
Message-ID: <46D823C0.5040309@zytor.com> (raw)
In-Reply-To: <20070831075434.GF20195@genua.de>

Christian Ehrhardt wrote:
> (XEN) Failed vm entry (exit reason 0x80000021) caused by invalid guest state (0).
> (XEN) ************* VMCS Area **************
> (XEN) 	 16-bit Guest-State Fields
> (XEN) 		0x00000800: 0x0018 0x0010 0x0018 0x0018 
> (XEN) 		0x00000808: 0x0018 0x0018 0x0000 0x0008 
> (XEN) 	 16-bit Host-State Fields
> (XEN) 		0x00000c00: 0xe010 0xe008 0xe010 0xe010 
> (XEN) 		0x00000c08: 0xe010 0xe010 0xe050 
> (XEN) 	 64-bit Control Fields
> (XEN) 		0x00002000: 0x0000000000bd5000 0x0000000000000000 0x0000000000bd4000 0x0000000000000000 
> (XEN) 		0x00002004: 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 
> (XEN) 		0x00002008: 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 
> (XEN) 		0x0000200c: 0x0000000000000000 0x0000000000000000 ------------------ ------------------ 
> (XEN) 		0x00002010: 0x00000000d8ba12e5 0x00000000ffd5e176 0x0000000000000000 0x0000000000000000 
> (XEN) 	 64-bit Guest-State Fields
> (XEN) 		0x00002800: 0x00000000ffffffff 0x00000000ffffffff 0x0000000000000000 0x0000000000000000 
> (XEN) 	 32-bit Control Fields
> (XEN) 		0x00004000: 0x0000001f 0x0681e7fa 0x00004008 0x00000000 
> (XEN) 		0x00004008: 0x00000000 0x00000000 0x0003edff 0x00000000 
> (XEN) 		0x00004010: 0x00000000 0x000011ff 0x00000000 0x00000020 
> (XEN) 		0x00004018: 0x00000000 0x00000000 0x00000000 
> (XEN) 	 32-bit RO Data Fields
> (XEN) 		0x00004400: 0x0000000c 0x80000021 0x00000000 0x00050033 
> (XEN) 		0x00004408: 0x00000000 0x00000000 0x00000003 0x00000000 
> (XEN) 	 32-bit Guest-State Fields
> (XEN) 		0x00004800: 0xffffffff 0xffffffff 0xffffffff 0xffffffff 
> (XEN) 		0x00004808: 0xffffffff 0xffffffff 0x00000000 0x00002067 
> (XEN) 		0x00004810: 0x00006fb5 0x00000000 0x0000d0ff 0x0000d0ff 
> (XEN) 		0x00004818: 0x0000d0ff 0x0000d0ff 0x0000d0ff 0x0000d0ff 
> (XEN) 		0x00004820: 0x00000082 0x0000008b 0x00000000 0x00000000 
> (XEN) 		0x00004828: 0x00000000 0x00000000 
> (XEN) 	 32-bit Host-State Fields
> (XEN) 		0x00004c00: 0x00000000 
> (XEN) 	 Natural 64-bit Control Fields
> (XEN) 		0x00006000: 0x00000000ffffffff 0x00000000ffffffff 0x0000000000050033 0x0000000000000651 
> (XEN) 		0x00006008: 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 
> (XEN) 	 64-bit RO Data Fields
> (XEN) 		0x00006400: 0x0000000000000000 0x0000000000010002 0x00000000003f7fd5 0x00000000001a2000 
> (XEN) 		0x00006408: 0x00000000000d11b2 0x0000000000000000 
> (XEN) 	 Natural 64-bit Guest-State Fields
> (XEN) 		0x00006800: 0x0000000080050033 0x0000000000bbfda0 0x0000000000002671 0x00000000ffffffff 
> (XEN) 		0x00006808: 0x00000000ffffffff 0x00000000ffffffff 0x00000000ffffffff 0x00000000ffffffff 
> (XEN) 		0x00006810: 0x00000000ffffffff 0x0000000000000000 0x00000000000d7264 0x00000000190df0bc 
> (XEN) 		0x00006818: 0x0000000000000000 0x0000000000000400 0x000000000000f9e8 0x0000000000100000 
> (XEN) 		0x00006820: 0x0000000000010002 0x0000000000000000 0x0000000000000000 0x0000000000000000 
> (XEN) 	 Natural 64-bit Host-State Fields
> (XEN) 		0x00006c00: 0x000000008005003b 0x00000000a1f47000 0x00000000000026f0 0x0000000000000000 
> (XEN) 		0x00006c08: 0x0000000000000000 0x00000000ff1cf380 0x00000000fe800000 0x00000000ffbeb080 
> (XEN) 		0x00006c10: 0x0000000000000000 0x0000000000000000 0x00000000ffbf3fe8 0x00000000ff14ab10 
> (XEN) **************************************
> (XEN) domain_crash_sync called from vmx.c:2154
> (XEN) Domain 353 (vcpu#0) crashed on cpu#1:
> (XEN) ----[ Xen-3.0.3-1  x86_32p  debug=n  Not tainted ]----
> (XEN) CPU:    1
> (XEN) EIP:    0010:[<00100000>]
> (XEN) EFLAGS: 00010002   CONTEXT: hvm
> (XEN) eax: 00100000   ebx: 00000000   ecx: f0000018   edx: 00050013
> (XEN) esi: 000932a0   edi: 000042d0   ebp: 000d0000   esp: 0000f9e8
> (XEN) cr0: 00050033   cr4: 00000651   cr3: 00bbfda0   cr2: 00000000
> (XEN) ds: 0018   es: 0018   fs: 0018   gs: 0018   ss: 0018   cs: 0010
> 

Xen crashes because it thinks VMX should be handling this, but VMX 
doesn't think so (the exit reason is "invalid state".)

At this point, paging is not yet enabled (CR0.PG = 0), but that is not 
natively supported by VMX.  From a cursory look it doesn't appear as 
though that Xen has recognized that it's supposed to emulate this in one 
way or another.

I'm on the road, so I don't have time for a more detailed analysis just 
at the moment.

	-hpa

  reply	other threads:[~2007-08-31 14:21 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-30 14:15 New x886-Setup code breaks HVM-XEN boot Christian Ehrhardt
2007-08-30 14:49 ` H. Peter Anvin
2007-09-03 18:32   ` New x86-Setup " Christian Ehrhardt
2007-09-04  6:16     ` H. Peter Anvin
2007-08-30 19:04 ` New x886-Setup " Jeremy Fitzhardinge
2007-08-31  7:54   ` New x86-Setup " Christian Ehrhardt
2007-08-31 14:20     ` H. Peter Anvin [this message]
2007-09-05 13:06     ` Ian Campbell

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=46D823C0.5040309@zytor.com \
    --to=hpa@zytor.com \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lk@c--e.de \
    /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