From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: "Andri Möll" <andri@dot.ee>
Cc: xen-devel@lists.xen.org
Subject: Re: "MMIO emulation failed" from booting OVMF on Xen v4.9.0
Date: Fri, 18 Aug 2017 11:55:22 -0400 [thread overview]
Message-ID: <20170818155522.GB28399@char.us.oracle.com> (raw)
In-Reply-To: <5994933B.1040809@dot.ee>
On Wed, Aug 16, 2017 at 06:47:23PM +0000, Andri Möll wrote:
> Hey,
>
> As per Andrew [Cooper]'s suggestion, writing here instead of #xen on
> Freenode.
>
> I'm trying out Xen (4.9.0) with OVMF (r21243.3858b4a1ff-1) and having it
OK, so this is
ommit 3858b4a1ff09d3243fea8d07bd135478237cb8f7
Author: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Date: Wed Mar 1 18:34:33 2017 +0000
ArmPlatformPkg/PlatformIntelBdsLib: don't clobber ConSplitter handle
Which looks to be done right after the 4MB increase. What is
the side of the binary blob?
> crash right on boot both with the 32b and 64b OVMF binaries. This is on Arch
Did you build them as RELEASE or DEBUG?
> Linux, AMD Ryzen on a X370 motherboard.
>
> Given the following minimal VM declaration:
> > builder = "hvm"
> > maxmem = 512
> > memory = 512
> > vcpus = 1
> > on_poweroff = "destroy"
> > on_reboot = "destroy"
> > on_crash = "destroy"
> > bios = "ovmf"
> > device_model_version = "qemu-xen"
> > bios_path_override = "/usr/share/ovmf/ovmf_code_ia32.bin"
> and running it with `xl create vm.cfg`, I see it crash while booting with
> the following displayed by `xl dmesg`:
>
> > (XEN) MMIO emulation failed: d1v0 16bit @ f000:0000ff54 -> 66 ea 5c ff
> > ff ff 10 00 b8 40 06 00 00 0f 22
> > (XEN) d1v0 Triple fault - invoking HVM shutdown action 1
> I've run the hypervisor with `guest_loglvl=all` for more output and attached
> it here and uploaded it at
> https://gist.github.com/moll/a46dffc7466ced93a0365a6916a4db96 in case the
> file doesn't go through.
>
> Any ideas anyone? Thanks in advance!
>
> Andri
> (XEN) HVM1 save: CPU
> (XEN) HVM1 save: PIC
> (XEN) HVM1 save: IOAPIC
> (XEN) HVM1 save: LAPIC
> (XEN) HVM1 save: LAPIC_REGS
> (XEN) HVM1 save: PCI_IRQ
> (XEN) HVM1 save: ISA_IRQ
> (XEN) HVM1 save: PCI_LINK
> (XEN) HVM1 save: PIT
> (XEN) HVM1 save: RTC
> (XEN) HVM1 save: HPET
> (XEN) HVM1 save: PMTIMER
> (XEN) HVM1 save: MTRR
> (XEN) HVM1 save: VIRIDIAN_DOMAIN
> (XEN) HVM1 save: CPU_XSAVE
> (XEN) HVM1 save: VIRIDIAN_VCPU
> (XEN) HVM1 save: VMCE_VCPU
> (XEN) HVM1 save: TSC_ADJUST
> (XEN) HVM1 save: CPU_MSR
> (XEN) HVM1 restore: CPU 0
> (d1) HVM Loader
> (d1) Detected Xen v4.9.0
> (d1) Xenbus rings @0xfeffc000, event channel 1
> (d1) System requested OVMF
> (d1) CPU speed is 3001 MHz
> (d1) Relocating guest memory for lowmem MMIO space disabled
> (d1) PCI-ISA link 0 routed to IRQ5
> (d1) PCI-ISA link 1 routed to IRQ10
> (d1) PCI-ISA link 2 routed to IRQ11
> (d1) PCI-ISA link 3 routed to IRQ5
> (d1) pci dev 01:3 INTA->IRQ10
> (d1) pci dev 02:0 INTA->IRQ11
> (d1) No RAM in high memory; setting high_mem resource base to 100000000
> (d1) pci dev 03:0 bar 10 size 002000000: 0f0000008
> (d1) pci dev 02:0 bar 14 size 001000000: 0f2000008
> (d1) pci dev 03:0 bar 30 size 000010000: 0f3000000
> (d1) pci dev 03:0 bar 14 size 000001000: 0f3010000
> (d1) pci dev 02:0 bar 10 size 000000100: 00000c001
> (d1) pci dev 01:1 bar 20 size 000000010: 00000c101
> (d1) Multiprocessor initialisation:
> (d1) - CPU0 ... 48-bit phys ... fixed MTRRs ... var MTRRs [1/8] ... done.
> (d1) Writing SMBIOS tables ...
> (d1) Loading OVMF ...
> (XEN) d1v0 Over-allocation for domain 1: 131329 > 131328
> (d1) Loading ACPI ...
> (d1) CONV disabled
> (d1) vm86 TSS at fc00a400
> (d1) BIOS map:
> (d1) ffe00000-fffdffff: Main BIOS
> (d1) E820 table:
> (d1) [00]: 00000000:00000000 - 00000000:000a0000: RAM
> (d1) HOLE: 00000000:000a0000 - 00000000:000f0000
> (d1) [01]: 00000000:000f0000 - 00000000:00100000: RESERVED
> (d1) [02]: 00000000:00100000 - 00000000:1f715000: RAM
> (d1) HOLE: 00000000:1f715000 - 00000000:fc000000
> (d1) [03]: 00000000:fc000000 - 00000001:00000000: RESERVED
> (d1) Invoking OVMF ...
> (XEN) MMIO emulation failed: d1v0 16bit @ f000:0000ff54 -> 66 ea 5c ff ff ff 10 00 b8 40 06 00 00 0f 22
That code is:
cripts/decodecode
Code: 66 ea 5c ff ff ff 10 00 b8 40 06 00 00 0f 22
Code: 66 ea 5c ff ff ff 10 00 b8 40 06 00 00 0f 22
sed: -e expression #1, char 1: unknown command: `-'
Code starting with the faulting instruction
===========================================
0: 66 ea data16 (bad)
2: 5c pop %rsp
3: ff (bad)
4: ff (bad)
5: ff 10 callq *(%rax)
7: 00 b8 40 06 00 00 add %bh,0x640(%rax)
d: 0f .byte 0xf
e: 22 .byte 0x22
Which looks to be garbage.
Also can you share what version of compiler you are using GCC?
And did you build the OVMF out of tree or use the Makefile and such that
came with Xen?
There is a way to get an good idea of where things are going bad by
cranked the debug up and making an special port be pipped to
a file (which you should be able to do with the crafty usage of extra
guest config parameters).
> (XEN) d1v0 Triple fault - invoking HVM shutdown action 1
> (XEN) *** Dumping Dom1 vcpu#0 state: ***
> (XEN) ----[ Xen-4.9.0 x86_64 debug=n Not tainted ]----
> (XEN) CPU: 6
> (XEN) RIP: f000:[<000000000000ff54>]
> (XEN) RFLAGS: 0000000000000046 CONTEXT: hvm guest (d1v0)
> (XEN) rax: 0000000040000023 rbx: 000000000000ff74 rcx: 0000000000000000
> (XEN) rdx: 0000000000000000 rsi: 0000000000000000 rdi: 0000000000005042
> (XEN) rbp: 0000000000000000 rsp: 0000000000000000 r8: 0000000000000000
> (XEN) r9: 0000000000000000 r10: 0000000000000000 r11: 0000000000000000
> (XEN) r12: 0000000000000000 r13: 0000000000000000 r14: 0000000000000000
> (XEN) r15: 0000000000000000 cr0: 0000000040000033 cr4: 0000000000000000
> (XEN) cr3: 0000000000000000 cr2: 0000000000000000
> (XEN) ds: f000 es: 0000 fs: 0000 gs: 0000 ss: 0000 cs: f000
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> https://lists.xen.org/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next prev parent reply other threads:[~2017-08-18 15:55 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-16 18:47 "MMIO emulation failed" from booting OVMF on Xen v4.9.0 Andri Möll
2017-08-17 8:49 ` Jan Beulich
2017-08-17 10:56 ` Andrew Cooper
2017-08-17 13:53 ` Alexey G
2017-08-17 10:51 ` Anthony PERARD
2017-08-18 15:55 ` Konrad Rzeszutek Wilk [this message]
2017-08-18 16:24 ` Andrew Cooper
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=20170818155522.GB28399@char.us.oracle.com \
--to=konrad.wilk@oracle.com \
--cc=andri@dot.ee \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).