[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1429841] Re: error "rom: requested regions overlap" fo
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [Bug 1429841] Re: error "rom: requested regions overlap" for NOLOAD sections |
Date: |
Fri, 03 Nov 2017 17:14:13 -0000 |
This bug is fixed in QEMU master by commits bf1733392ca2 and
f33e5e6299288c, which will be in the upcoming QEMU 2.11 release.
(PS: the thing the loader cares about is not elf sections but elf
segments in the program header, so the section table and its attributes
isn't relevant here, only the program header. In any case your example
ELF file loads OK with the bugfixes applied.)
** Changed in: qemu
Status: New => Fix Committed
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1429841
Title:
error "rom: requested regions overlap" for NOLOAD sections
Status in QEMU:
Fix Committed
Bug description:
command line:
qemu-system-arm -semihosting -nographic -monitor null -serial null -no-reboot
-kernel build/fw/0HNFcomSLuP1_CUNIT.elf
output:
rom: requested regions overlap (rom phdr #6: build/fw/0HNFcomSLuP1_CUNIT.elf.
free=0x8001effc, addr=0x8001c000)
rom loading failed
I checked the sections of the .elf file with arm-none-eabi-objdump -h:
Sections:
Idx Name Size VMA LMA File off Algn
...
35 .marker_appli 00001000 801ae000 801ae000 00025000 2**0
ALLOC
36 .safe_data 00000014 80200000 8001b000 00020000 2**2
CONTENTS, ALLOC, LOAD, DATA
37 .safe_bss 00000488 80200020 8001b020 00020014 2**2
ALLOC
38 .marker_safe_data 00001000 80201000 8001c000 00029000 2**0
ALLOC
39 .data 000008cc 80202000 8001b600 00022000 2**3
CONTENTS, ALLOC, LOAD, DATA
40 .bss 0000312c 802028d0 8001bed0 000228cc 2**3
ALLOC
41 .marker_data 00001000 80206000 8001f600 00026000 2**0
ALLOC
42 .cunit 00010000 80300000 80119600 00028000 2**0
ALLOC
43 .marker_code 00001000 8001c000 8001c000 00024000 2**0
ALLOC
...
So I had a look where the values in the error message could come from:
0x8001c000: is the "LMA" value of section .marker_safe_data
0x8001effc: is "Size" + "LMA" of the .bss section (0x0000312c + 0x8001bed0)
So it is correct that (regarding the "LMA" value) the .marker_safe_data
section collides with .bss section.
But actually these sections have no "LOAD" attribute, so I would guess that
their "LMA" should not be used anyway.
Those section should reside at their "VMA" addresses (0x802xxxxx) during
runtime but they have no data to load.
Or am I getting something completely wrong?
Should I give an additional option to qemu?
I got this error with 2.0.0+dfsg-2ubuntu1.10 and 1.0.50-2012.03-0ubuntu2.1
I didn't get this error (but others) with 0.10.2
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1429841/+subscriptions
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [Bug 1429841] Re: error "rom: requested regions overlap" for NOLOAD sections,
Peter Maydell <=