]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commit
prelink: Fix Segmentation fault error when prelink qemu rbt/prelink
authorRobert Yang <liezhi.yang@windriver.com>
Thu, 11 Oct 2018 02:32:55 +0000 (10:32 +0800)
committerRobert Yang <liezhi.yang@windriver.com>
Thu, 11 Oct 2018 04:04:05 +0000 (12:04 +0800)
commitcd5b331cec3562d6adcf4f8d4b5d42679894d5ce
treebd55b7f146bfc66e95463cb29f95daab1027a05d
parentd0d55add6cb01252a46d829ade75666920b676fa
prelink: Fix Segmentation fault error when prelink qemu

The info->resolvetls might be NULL according to src/prelink.c:
[snip]
 /* Dynamic linker does not depend on any other library,
    all symbols resolve to themselves with the exception
    of SHN_UNDEF symbols which resolve to 0.  */
if (info->symtab[r_sym].st_shndx == SHN_UNDEF)
  {
    info->resolveent = NULL;
    info->resolvetls = NULL;
[snip]

So we must check it before use its members, otherwise, there might be
Segmentation fault error.

Fixed:
MACHINE = "qemumips"
IMAGE_INSTALL_append = " qemu"
$ bitbake core-image-minimal
[snip]
| /path/to/qemumips-poky-linux/core-image-minimal/1.0-r0/temp/run.prelink_image.1000: line 111:  1010 Segmentation fault      (core dumped)
[snip]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/recipes-devtools/prelink/prelink/0001-src-arch-mips.c-check-info-resolvetls-before-use-its.patch [new file with mode: 0644]
meta/recipes-devtools/prelink/prelink_git.bb