[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1596832] [NEW] e500 -bios/-kernel broken with big imag
From: |
Andrej Krutak |
Subject: |
[Qemu-devel] [Bug 1596832] [NEW] e500 -bios/-kernel broken with big images |
Date: |
Tue, 28 Jun 2016 07:50:27 -0000 |
Public bug reported:
This is tested using qemu 2.4.1, but it looks like the code
qemu/hw/ppc/e500.c has not changed since. This looks like the source of
the problem:
http://git.qemu.org/?p=qemu.git;a=commitdiff;h=3812c71ffaa2cf733c3087792b859fef30b7545f
What works:
----------
Basic invocation qemu-system-ppc -machine ppce500 -monitor stdio -bios
u-boot.e500 works, I get the uboot prompt and this:
(qemu) info roms
addr=0000000000f00000 size=0x044b8c mem=ram name="phdr #0:
.../qemu/share/qemu/u-boot.e500"
addr=0000000000f81000 size=0x006b00 mem=ram name="phdr #1:
.../qemu/share/qemu/u-boot.e500"
Passing u-boot.e500 image as kernel (-bios u-boot.e500 -kernel u-boot.e500)
appears to work, $qemu_kernel_addr is filled in, though (as expected) uboot
complains about the image format.
(qemu) info roms
addr=0000000000f00000 size=0x044b8c mem=ram name="phdr #0:
.../qemu/share/qemu/u-boot.e500"
addr=0000000000f81000 size=0x006b00 mem=ram name="phdr #1:
.../qemu/share/qemu/u-boot.e500"
addr=0000000002000000 size=0x054e8c mem=ram
name=".../qemu/share/qemu/u-boot.e500
What doesn't work:
-----------------
However, once I try to load a big image (>=32 MiB), uboot doesn't even
show anything:
qemu-system-ppc -machine ppce500 -monitor stdio -bios u-boot.e500
-kernel boot/vmlinux -m 1024
(qemu) info roms
addr=0000000000f00000 size=0x044b8c mem=ram name="phdr #0:
.../qemu/share/qemu/u-boot.e500"
addr=0000000000f81000 size=0x006b00 mem=ram name="phdr #1:
.../qemu/share/qemu/u-boot.e500"
addr=0000000002000000 size=0x27aeedc mem=ram name="boot/vmlinux"
...
(gdb) bt
#0 0x00f2efcc in ?? ()
#1 0x00f31554 in ?? ()
#2 0x00f03f4c in ?? ()
#3 0x00f04458 in ?? ()
#4 0x00f028dc in ?? ()
#5 0x00f01080 in ?? ()
The thing is, this used to work +- before the commit, where I'd just
pass the image as -kernel option, and it booted.
If I do that now (w/o the -bios option, using the exact same image), the kernel
gets loaded twice, only at different addresses (the cause is obvious from the
commit), causing overlap error:
qemu-system-ppc -machine ppce500 -monitor stdio -kernel boot/vmlinux -m 1024
QEMU 2.4.1 monitor - type 'help' for more information
(qemu) rom: requested regions overlap (rom boot/vmlinux.
free=0x00000000027492fc, addr=0x0000000002000000)
** Affects: qemu
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1596832
Title:
e500 -bios/-kernel broken with big images
Status in QEMU:
New
Bug description:
This is tested using qemu 2.4.1, but it looks like the code
qemu/hw/ppc/e500.c has not changed since. This looks like the source
of the problem:
http://git.qemu.org/?p=qemu.git;a=commitdiff;h=3812c71ffaa2cf733c3087792b859fef30b7545f
What works:
----------
Basic invocation qemu-system-ppc -machine ppce500 -monitor stdio
-bios u-boot.e500 works, I get the uboot prompt and this:
(qemu) info roms
addr=0000000000f00000 size=0x044b8c mem=ram name="phdr #0:
.../qemu/share/qemu/u-boot.e500"
addr=0000000000f81000 size=0x006b00 mem=ram name="phdr #1:
.../qemu/share/qemu/u-boot.e500"
Passing u-boot.e500 image as kernel (-bios u-boot.e500 -kernel u-boot.e500)
appears to work, $qemu_kernel_addr is filled in, though (as expected) uboot
complains about the image format.
(qemu) info roms
addr=0000000000f00000 size=0x044b8c mem=ram name="phdr #0:
.../qemu/share/qemu/u-boot.e500"
addr=0000000000f81000 size=0x006b00 mem=ram name="phdr #1:
.../qemu/share/qemu/u-boot.e500"
addr=0000000002000000 size=0x054e8c mem=ram
name=".../qemu/share/qemu/u-boot.e500
What doesn't work:
-----------------
However, once I try to load a big image (>=32 MiB), uboot doesn't even
show anything:
qemu-system-ppc -machine ppce500 -monitor stdio -bios u-boot.e500
-kernel boot/vmlinux -m 1024
(qemu) info roms
addr=0000000000f00000 size=0x044b8c mem=ram name="phdr #0:
.../qemu/share/qemu/u-boot.e500"
addr=0000000000f81000 size=0x006b00 mem=ram name="phdr #1:
.../qemu/share/qemu/u-boot.e500"
addr=0000000002000000 size=0x27aeedc mem=ram name="boot/vmlinux"
...
(gdb) bt
#0 0x00f2efcc in ?? ()
#1 0x00f31554 in ?? ()
#2 0x00f03f4c in ?? ()
#3 0x00f04458 in ?? ()
#4 0x00f028dc in ?? ()
#5 0x00f01080 in ?? ()
The thing is, this used to work +- before the commit, where I'd just
pass the image as -kernel option, and it booted.
If I do that now (w/o the -bios option, using the exact same image), the
kernel gets loaded twice, only at different addresses (the cause is obvious
from the commit), causing overlap error:
qemu-system-ppc -machine ppce500 -monitor stdio -kernel boot/vmlinux -m 1024
QEMU 2.4.1 monitor - type 'help' for more information
(qemu) rom: requested regions overlap (rom boot/vmlinux.
free=0x00000000027492fc, addr=0x0000000002000000)
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1596832/+subscriptions
- [Qemu-devel] [Bug 1596832] [NEW] e500 -bios/-kernel broken with big images,
Andrej Krutak <=