Files
poky/meta/recipes-devtools/qemu/qemu-1.2.0/relocatable_sdk.patch
Laurentiu Palcu c8e3e0149a nativesdk-qemu: fix SDK relocation issue
User mode emulation binaries are linked using a local linker script. The
nativesdk ones were not used and the resulting binaries did not have the
interp section resized. Hence, those binaries could not be relocated.

[YOCTO #3083]

(From OE-Core rev: da014e900adfe96f01290c5a8f5fb08e295ca204)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-12 15:13:40 +01:00

35 lines
1.2 KiB
Diff

Upstream-Status: Inappropriate [SDK specific]
In order to be able to change the dynamic loader path when relocating
binaries, the interp section has to be made big enough to accomodate
the new path (4096 is the maximum path length in Linux).
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Index: qemu-1.2.0/i386.ld
===================================================================
--- qemu-1.2.0.orig/i386.ld
+++ qemu-1.2.0/i386.ld
@@ -8,7 +8,7 @@ SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0x60000000 + SIZEOF_HEADERS;
- .interp : { *(.interp) }
+ .interp : { *(.interp); . = 0x1000; }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
Index: qemu-1.2.0/x86_64.ld
===================================================================
--- qemu-1.2.0.orig/x86_64.ld
+++ qemu-1.2.0/x86_64.ld
@@ -6,7 +6,7 @@ SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0x60000000 + SIZEOF_HEADERS;
- .interp : { *(.interp) }
+ .interp : { *(.interp); . = 0x1000; }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }