summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/prelink/prelink
Commit message (Collapse)AuthorAgeFilesLines
* prelink: Fix Segmentation fault error when prelink qemuRobert Yang2018-10-121-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: 7f5d6f6b70cb1eb486d3ff5c029fc3c6202fc826) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* prelink: Update to the latest version of prelinkMark Hatle2018-09-061-39/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new version of prelink includes the fix for a segmentation fault due to using e_shnum vs e_shstrndx. In addition the following changes are incorporated: 2018-08-29 Khem Raj <raj.khem@gmail.com> * src/elf.h: Add RISC-V defines * src/rtld/dl-tls.c: Add RISC-V support * src/rtld/rtld.c: Add RISC-V support 2018-08-29 Robert Yang <liezhi.yang@windriver.com> * src/dso.c: use ehdr.e_shstrndx as index 2017-06-20 Andrew Stubbs <ams@codesourcery.com> * src/arch-x86_64.c (x86_64_prelink_conflict_rela): Also convert R_X86_64_32 conflicts to R_X86_64_IRELATIVE for ifuncs. * src/arch-x86_64.c (PL_ARCH(x32)): Set mmap_end to 0x60000000. 2017-06-20 Joseph Myers <joseph@codesourcery.com> * src/rtld/rtld.c (load_ld_so_conf): Add argument use_x32. (main): Update call to load_ld_so_conf. 2017-06-20 Kyle Russell <bkylerussell@gmail.com> * src/rtld/rtld.c: Add missing DT_NEEDED DSOs to needed_list (From OE-Core rev: 1f0568c6b8982f814f630193fb5114db489afcaf) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* prelink: use ehdr.e_shstrndx as index rather than ehdr.e_shnumRobert Yang2018-08-161-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | [YOCTO #12791] According to struct elf32_hd, the e_shnum is section header number, and the index is e_shstrndx, not e_shnum. This can fix segmention fault when handle libqb.so.0.18.2 from libqb_1.0.3. It fails to handle libqb.so.0.18.2 and get errors: Symbol section index outside of section numbers Then segmentation fault, this is because the e_shnum is 34, while e_shstrndx is 27 (it would be 33 when no errors), I've checked several elf files to confirm that the ones after e_shstrndx is NULL, so use e_shstrndx should be correct. Fixed: MACHINE="qemux86-64" IMAGE_INSTALL_append = " libqb" #libqp is from meta-openembedded $ bitbake core-image-minimal Segmention fault (From OE-Core rev: b7c291ee6532cba845ee6bfbbaa21076a2b2cbe5) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* prelink: also look at nonstandard lib pathsNitin A Kamble2012-01-041-4/+4
| | | | | | | | | | | | | | Prelinking for x32 image showed that it was ignoring libraries located at locations like /usr/libx32. Like that mips n32 has library locations set as lib32 This commit modifies prelink.conf to look at libraries also located at libx32 & lib32 locations. Thanks to Mark Hatle for suggesting the fix. (From OE-Core rev: c02b9de25b405c81da0f7bebd07423e8cee14eb7) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* prelink: Add lib64 dirs to prelink.confKumar Gala2011-08-051-4/+4
| | | | | | | | | Handle multlib or cases that baselib is lib64. (From OE-Core rev: 82db6bda2b60f0a4756f1d604a5dd1369fcc8a19) Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* prelink: Uprev prelink to latest versionMark Hatle2011-06-281-1/+1
| | | | | | | | | | | | | | | | The latest cross-prelink version tracks the prelink r190 SVN. Fix two minor issues as well. If we remove the package, we would unprelink the filesystem after the rm was finished. This is incorrect.. we need to do this prerm. Move the cron and cron configuration file to a new package split. This item is not valid for most embedded users. (From OE-Core rev: e8da02aeae4b3c1c2a805d63d6d0919d3034aba6) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* prelink: Add missing macro.prelink fileMark Hatle2011-02-251-0/+5
| | | | | | Add the missing macro.prelink file... Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* Major layout change to the packages directoryRichard Purdie2010-08-273-0/+80
Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>