All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pekka Enberg <penberg@cs.helsinki.fi>
To: Avi Kivity <avi@redhat.com>
Cc: KVM General <kvm@vger.kernel.org>
Subject: Re: Problem with KVM guest switching to x86 long mode
Date: Sun, 11 Apr 2010 12:48:38 +0300	[thread overview]
Message-ID: <4BC19AF6.6030407@cs.helsinki.fi> (raw)
In-Reply-To: <4BC1936F.5060009@redhat.com>

Avi Kivity wrote:
>> Sorry for the delay. Here you go:
>>
>> Page Tables:
>>  pte4: 0000000002403007   pte3: 0000000002404007   pte2: 0000000000000183
> 
> These are all correct.
> 
> The only thing I can think of, is that MAXPHYADDR is small value.  And 
> indeed, if I run it on an ept capable machine (which does the check in 
> hardware, not software), I get
> 
> IO error: OUT port=cf8, size=4, count=1
> KVM exit reason: 2 ("KVM_EXIT_IO")
> Registers:
>  rip: ffffffff813a0d8f   rsp: ffffffff8167bdf8 flags: 0000000000000086
>  rax: 000000008000c300   rbx: 000000000000c000   rcx: 0000000000000000
>  rdx: 0000000000000cf8   rsi: 0000000000000018   rdi: 0000000000000000
>  rbp: ffffffff8167be08   r8:  0000000000000000   r9:  0000000000000000
>  r10: 0000000000000006   r11: 00000000bbceeb20   r12: 0000000000000000
>  r13: 0000000000000000   r14: 0000000000000000   r15: 0000000000000000
>  cr0: 0000000080050033   cr2: 0000000000000000   cr3: 0000000001001000
>  cr4: 00000000000000a0   cr8: 0000000000000000
> 
> So the guest is in long mode, happily trying to access pci config space.
> 
> MAXPHYADDR comes from cpuid 80000008.eax[0:7].  Typical values are 36-40 
> (number of physical address bits supported by the processor).  What 
> value does your guest see?

Ah, nice catch! The host cpuid doesn't seem to support 80000008 at so I 
didn't set it up in the guest either. I now added dummy emulation for it 
and the triple fault is fixed.

Thanks Avi!

			Pekka

  reply	other threads:[~2010-04-11  9:48 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-08 18:26 Problem with KVM guest switching to x86 long mode Pekka Enberg
2010-04-08 18:36 ` Avi Kivity
2010-04-08 18:59   ` Pekka Enberg
2010-04-08 19:30     ` Avi Kivity
2010-04-11  6:30       ` Pekka Enberg
2010-04-11  9:16         ` Avi Kivity
2010-04-11  9:48           ` Pekka Enberg [this message]
2010-04-11  9:59             ` Avi Kivity
2010-04-11 10:02               ` Pekka Enberg
2010-04-11 11:48                 ` Avi Kivity
2010-04-11 11:52                   ` Pekka Enberg
2010-04-11 12:02                     ` Avi Kivity
2010-04-11 12:04                       ` Avi Kivity

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=4BC19AF6.6030407@cs.helsinki.fi \
    --to=penberg@cs.helsinki.fi \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.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.