Age | Commit message (Collapse) | Author |
|
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>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
[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
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
|
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.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Handle multlib or cases that baselib is lib64.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
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.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
|
Add the missing macro.prelink file...
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
|
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>
|