OSDN Git Service
Mike Frysinger [Sun, 27 Nov 2011 05:27:43 +0000 (00:27 -0500)]
ldso: use __func__ rather than __FUNCTION__
The former is part of a standard (C99) while the latter is not.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 27 Nov 2011 03:31:19 +0000 (22:31 -0500)]
buildsys: drop manual TARGET_SUBARCH .config lookup
We source the .config file, so there should be no need to manually extract
it. If the sourcing doesn't work, then a lot of things break in this file.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 27 Nov 2011 03:36:30 +0000 (22:36 -0500)]
include/: ignore new sys/eventfd.h symlink
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Carmelo Amoroso [Thu, 27 Oct 2011 13:11:11 +0000 (15:11 +0200)]
buildsys: s/CROSS/CROSS_COMPILE/g
Use CROSS_COMPILE instead of CROSS as other projects are doing
(i.e. kernel, busybox, buildroot).
CROSS is still supported for backward compatibility only
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer [Thu, 24 Nov 2011 18:22:59 +0000 (19:22 +0100)]
nptl: add missing pt-tempname.c
fix
bd3c1a2495cbcb51b606f8e4892fcd127f91e645 forgotten file.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Carmelo Amoroso [Tue, 1 Nov 2011 14:08:17 +0000 (15:08 +0100)]
libc: do not rely upon ulimit kernel syscall.
On several architectures __NR_ulimit syscall number is currently
defined but it is remapped onto sys_ni_syscall, while on other
architectures they are not longer defined.
So use {get,set}rlimit only to implement ulimit interface.
It fixes LTP ulimit01 test case.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Acked-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Filippo Arcidiacono [Wed, 23 Nov 2011 10:50:55 +0000 (11:50 +0100)]
libdl: fix size parameter when unmap library in dlclose
Fix size parameter when unmap a library by means of dlclose, by
taking into account the p_vaddr of first PT_LOAD segment, so it works
also for prelinked shared objects.
Unmapping of dlopen shared libraries is broken since
94cc6edb78a12655c0602a246fa1cbdc8c6d0ad9
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Mike Frysinger [Tue, 19 Jul 2011 20:05:52 +0000 (16:05 -0400)]
stdio: add support for "e" flag with fopen()
Support this useful glibc extension for optionally setting O_CLOEXEC
on fopen streams.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 20 Nov 2011 07:34:49 +0000 (02:34 -0500)]
libcrypt: do not cast away const of key/salt
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Bernhard Reutner-Fischer [Fri, 18 Nov 2011 07:49:25 +0000 (08:49 +0100)]
libubacktrace: use .so.$(ABI_VERSION)
Thanks to William Pitcock for noticing
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 17:35:09 +0000 (18:35 +0100)]
nptl: sem_open: use open64 if LFS
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 13:46:07 +0000 (14:46 +0100)]
misc: hide __gen_tempname
fix signed vs. unsigned comparison warnings while at it
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 10:33:35 +0000 (11:33 +0100)]
stdio: hide _stdio_validate_FILE
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 10:25:52 +0000 (11:25 +0100)]
regex_old: make some internal helpers static
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 10:01:04 +0000 (11:01 +0100)]
inet: hide relocations
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 09:55:29 +0000 (10:55 +0100)]
unistd: hide relocations
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 17 Nov 2011 09:46:42 +0000 (10:46 +0100)]
resolv: hide relocations
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernd Schmidt [Mon, 14 Nov 2011 13:44:51 +0000 (14:44 +0100)]
Add a C6X-specific ipc.h.
Signed-off-by: Bernd Schmidt <bernds@codesourcery.com>
Carmelo Amoroso [Tue, 8 Nov 2011 13:33:22 +0000 (14:33 +0100)]
buildsys: do not install ld.so linker script
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Jason Woodward [Sat, 11 Jun 2011 05:08:48 +0000 (01:08 -0400)]
libubacktrace: Conditionally link libgcc_eh
When libubacktrace is not enabled there is no need to link in libgcc_eh
Fixes bootstrap failures with (gcc-4.5.x) stage1 compilers that --disable-shared
Signed-off-by: Jason Woodward <jason.woodward@timesys.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Sun, 12 Jun 2011 07:44:32 +0000 (08:44 +0100)]
libm: pass CFLAGS to e500 fenv
As noted by Jason Woodward
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Jason Woodward [Sun, 12 Jun 2011 00:39:33 +0000 (20:39 -0400)]
honor UCLIBC_HAS_FENV for e500
Signed-off-by: Jason Woodward <jason.woodward@timesys.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Jason Woodward [Sat, 11 Jun 2011 23:09:53 +0000 (19:09 -0400)]
Fix e500 fpu libm build
Define libm_ARCH_fpu_OUT in libm/powerpc/e500/Makefile.arch as it is used
in libm/powerpc/e500/fpu/Makefile.arch
libm_ARCH_OBJ:=$(patsubst $(libm_ARCH_fpu_DIR)/%.c,$(libm_ARCH_fpu_OUT)/%.o,$(libm_ARCH_SRC))
This appears to have been broken since
cd3a494e99fa4bcad1c2a621b71361005528bead
Signed-off-by: Jason Woodward <jason.woodward@timesys.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Henning Heinold [Sat, 4 Jun 2011 19:21:41 +0000 (21:21 +0200)]
libc: flesh out linux scheduler functions
Most stuff was taken from the eglibc.
Signed-off-by: Henning Heinold <heinold@inf.fu-berlin.de>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Timo Teräs [Mon, 7 Nov 2011 17:08:33 +0000 (18:08 +0100)]
ldso: support RTLD_NOLOAD
So application query if specified module is loaded or not with
dlopen.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 7 Nov 2011 08:24:30 +0000 (09:24 +0100)]
stdlib: add qsort_r
GNU extension like qsort but takes a 3 parameter comparision function.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 4 Nov 2011 12:02:09 +0000 (13:02 +0100)]
powerpc: Fix typo in clone()
Thanks to strauman at slac stanford edu for noticing
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Jean-Christian de Rivaz [Wed, 2 Nov 2011 19:44:00 +0000 (20:44 +0100)]
Add stub for eventfd.
Warn if the enventfd() function is not implemented.
Signed-off-by: Jean-Christian de Rivaz <jc@eclis.ch>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
William Pitcock [Wed, 2 Nov 2011 00:18:48 +0000 (19:18 -0500)]
libm: implement a generic sincos().
We already provide sincos() on some archs, so we should ship a generic version.
Signed-off-by: William Pitcock <nenolod@dereferenced.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
William Pitcock [Tue, 1 Nov 2011 23:55:25 +0000 (18:55 -0500)]
libm: add cabsf() and cabsl() functions.
Signed-off-by: William Pitcock <nenolod@dereferenced.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
William Pitcock [Tue, 1 Nov 2011 23:41:30 +0000 (18:41 -0500)]
libm: implement generic cexp(), cexpf() and cexpl().
The cexp*() family of functions is defined by the C99 math standard as
implementing exponential functions for complex types.
Signed-off-by: William Pitcock <nenolod@dereferenced.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 4 Nov 2011 09:23:06 +0000 (10:23 +0100)]
config: document eventfd
in LINUX_SPECIFIC
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Wed, 2 Nov 2011 16:31:51 +0000 (17:31 +0100)]
setegid: use setresgid conditionally
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Wed, 2 Nov 2011 16:28:15 +0000 (17:28 +0100)]
stubs: remove leftover undefs
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Wed, 2 Nov 2011 15:51:55 +0000 (16:51 +0100)]
buildsys: eventually remove sys/eventfd.h
rm sys/eventfd.h unless linux_specific was chosen
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 31 Oct 2011 22:13:09 +0000 (23:13 +0100)]
stubs: handle linux module functions
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Sun, 30 Oct 2011 20:57:39 +0000 (21:57 +0100)]
stubs: handle linux-specific
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Sat, 29 Oct 2011 10:09:57 +0000 (12:09 +0200)]
stubs: fix inverted socket logic
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Sat, 29 Oct 2011 09:55:43 +0000 (11:55 +0200)]
stubs: undef linux specific unless they were asked for
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Jean-Christian de Rivaz [Mon, 24 Oct 2011 17:07:43 +0000 (19:07 +0200)]
Add eventfd support.
Hello,
I whould like to share this simple patch that add the eventfd call to
uClibc. Please review so it can be accepted to be merged.
Jean-Christian
Signed-off-by: Jean-Christian de Rivaz <jc@eclis.ch>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Rob Landley [Thu, 27 Oct 2011 14:31:06 +0000 (07:31 -0700)]
sparc: fix build for linuxthreads.old
sparc target has assembly implementations of clone.S that doesn't
get used, and thus the build breaks. Also, sparc is missing a header file in
pthreads.old that exists in pthreads.new.
Signed-off-by: Rob Landley <rob@landley.net>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Carmelo Amoroso [Thu, 27 Oct 2011 10:48:31 +0000 (12:48 +0200)]
resolver: add a dependencies for DNS resolver feature
DNS resolver needs at least IPV4 or IPV6 support enabled
to be correctly built. Add such dependency.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer [Thu, 27 Oct 2011 10:38:43 +0000 (12:38 +0200)]
pthreads: fix build when DNS resolver is not enabled.
Resolver state is only available if DNS resolver is enabled.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Rob Landley [Thu, 27 Oct 2011 10:32:34 +0000 (12:32 +0200)]
sh: fix build for SH in !NPTL case
Signed-off-by: Rob Landley <rob@landley.net>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Thu, 27 Oct 2011 08:00:58 +0000 (10:00 +0200)]
linuxthreads: fix typo in __UCLIBC_HAS_IPv4__ macro
IPv4 should has 'V' capital letter.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 25 Oct 2011 10:28:51 +0000 (12:28 +0200)]
ldso: let people disable to lookup into LD_LIBRARY_PATH
On hardened system it could be useful to disable the use
of LD_LIBRARY_PATH.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 25 Oct 2011 09:26:50 +0000 (11:26 +0200)]
ldso: minor fixes to implicit search path
Do not defined _dl_ldsopatch if implicit search path if not enabled,
and avoid to call search_for_named_library (even if it is able to handle
NULL search path).
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 25 Oct 2011 08:24:06 +0000 (10:24 +0200)]
ldso: disable the implicit path search in stand-alone mode as well
Honour LDSO_SEARCH_INTERP_PATH knob option also when running in
stand-alone mode.
Signed-off-by: Rune <u-uclibc-y2lt@aetey.se>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 25 Oct 2011 04:54:34 +0000 (06:54 +0200)]
config: add support for <custom>_defconfig
Add support for platform specific and/or custom defconfig
per arch. They have to be suffixed by '_defconfig' and are
automatically detected and displayed by issuing 'make ARCH=<arch> help'.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 25 Oct 2011 04:44:11 +0000 (06:44 +0200)]
config: revise defconfigs strategy
Revise the way defconfigs are defined, by renaming them
from defconfigs/<arch> to defconfigs/<arch>/defconfig.
It allows to have multiple defconfigs per arch.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Tue, 25 Oct 2011 04:35:10 +0000 (06:35 +0200)]
config: tidy-up of config targets
Introduce two local variables for 'conf' and 'mconf' binaries.
Use $^ automatic variable to invoke [m]conf tool.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer [Fri, 14 Oct 2011 15:47:42 +0000 (17:47 +0200)]
resolv: fix memory leak
Timothy Holdener writes:
small memory leak in __dns_lookup() when the A record
in the DNS answer is preceded by one or more CNAME records.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 20 Oct 2011 16:53:37 +0000 (18:53 +0200)]
resolv: commentary typo fix
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 20 Oct 2011 16:49:48 +0000 (18:49 +0200)]
gethostbyname_r: set correct h_errno upon failure
previously gethostbyname_r(ipv6.google.com);herror("ERROR:") gave
Answer name = |ipv6.google.com|
Answer type = |5|
herrno=1
h_errno=0
ERROR:: Error 0
herrno=1
h_errno=1
ERROR:: Unknown host
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Tue, 18 Oct 2011 17:05:07 +0000 (19:05 +0200)]
resolv: fix compilation
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Carmelo Amoroso [Wed, 19 Oct 2011 14:30:32 +0000 (16:30 +0200)]
libdl: remove _dl_ldsopath from libdl.a
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Fri, 14 Oct 2011 10:04:58 +0000 (12:04 +0200)]
ldd: take LD_LIBRARY_PATH into account
Extend the environment variables adding the LD_LIBRARY_PATH
if actually passed when doing shared library tracings through
the ld.so trace capability.
This is possible only using the system dynamic linker in stand-alone
mode to avoid any vulnerability.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer [Fri, 14 Oct 2011 12:11:01 +0000 (14:11 +0200)]
Config.in: fix erroneously deleted line
blame
e9d74358093b61e2e597fa9e066ba0468df14cba
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 26 Aug 2011 09:29:48 +0000 (11:29 +0200)]
ldso: silence harmless warning for !LDSO_PRELINK_SUPPORT
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Guillaume Bourcier [Tue, 11 Oct 2011 11:45:33 +0000 (13:45 +0200)]
libc: fix daylight saving time handling
The algorithm computing daylight saving time incorrectly adds a day for
each month after January for leap years. The clock shift from/to DST can
be delayed if the last Sunday of a transition month is exactly seven
days before the first of the following month.
This change adds a day for the February month only.
Signed-off-by: Guillaume Bourcier <guillaumebourcier@free.fr>
Signed-off-by: Richard Braun <rbraun@sceen.net>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Mike Frysinger [Wed, 5 Oct 2011 03:26:10 +0000 (23:26 -0400)]
ldso: unify pread syscall definition
A few arches want pread() defined, so move it to common code.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Mike Frysinger [Wed, 5 Oct 2011 03:26:09 +0000 (23:26 -0400)]
ldso: bfin/frv: drop dead simulator code
Nowhere do we define DYNAMIC_LOADER_IN_SIMULATOR, so drop the little bit
of code that depends on it. At least in the Blackfin case, we can run an
FDPIC ldso just fine under the simulator without hacks.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Mike Frysinger [Wed, 5 Oct 2011 03:26:08 +0000 (23:26 -0400)]
ldso: merge duplicate dl-syscalls.h code to common header
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Ryan Flux [Tue, 4 Oct 2011 00:50:49 +0000 (10:50 +1000)]
microblaze mmu/elf/shared lib support
microblaze can either be with mmu or without
If with, use elf rather than flat, and support shared libs
Signed-off-by: Ryan Flux <ryan.flux@emsolutions.com.au>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Steve Bennett [Tue, 4 Oct 2011 00:50:48 +0000 (10:50 +1000)]
microblaze linux has no SDA support
The linker does not set up the Small Data Area symbols,
_SDA_BASE_ and _SDA2_BASE_ so don't try to resolve them
Signed-off-by: Ryan Flux <ryan.flux@emsolutions.com.au>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Steve Bennett [Tue, 4 Oct 2011 00:50:47 +0000 (10:50 +1000)]
microblaze can be either big or little endian
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Ryan Flux [Tue, 4 Oct 2011 00:50:46 +0000 (10:50 +1000)]
microblaze has long double support too
Signed-off-by: Ryan Flux <ryan.flux@emsolutions.com.au>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Steve Bennett [Tue, 4 Oct 2011 00:50:45 +0000 (10:50 +1000)]
Use the generic bits/select.h for microblaze
This avoids warnings about type-punned pointers
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Mike Frysinger [Sat, 1 Oct 2011 19:41:06 +0000 (15:41 -0400)]
tests: ignore new inet test
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 1 Oct 2011 19:39:46 +0000 (15:39 -0400)]
tests: add fallback for mktemp()
If SuSv3 legacy support is disabled, then mktemp() isn't available, and
we end up getting a lot of build errors. So add a fallback built on top
of tempnam() since that currently cannot be disabled.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 1 Oct 2011 19:12:14 +0000 (15:12 -0400)]
ldso: x86_64: delete unused variable
gcc informed me:
In file included from ldso/ldso/ldso.c:46:0:
ldso/ldso/x86_64/elfinterp.c: In function '_dl_do_lazy_reloc':
ldso/ldso/x86_64/elfinterp.c:294:6: warning:
variable 'symtab_index' set but not used [-Wunused-but-set-variable]
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 1 Oct 2011 19:10:39 +0000 (15:10 -0400)]
ldso: constify reloc array itself
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Denys Vlasenko [Thu, 15 Sep 2011 14:59:21 +0000 (16:59 +0200)]
Defeat compiler optimization which assumes function addresses are never NULL
From email:
A warning for people who can be hit by the same or similar issue:
gcc 4.1.2 with -march=i486 here with -Os and even with -O2 or -O
is "optimizing away" the check
if (_stdio_term)
in libc/stdlib/_atexit.c
which results in a "call 0" and a segfault at exit
if you do not happen to link in stdio.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Bernhard Reutner-Fischer [Mon, 12 Sep 2011 15:29:21 +0000 (17:29 +0200)]
config: tweak help text
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Denys Vlasenko [Sat, 10 Sep 2011 01:01:33 +0000 (03:01 +0200)]
resolv: simple optimizations and style/readability fixes
text data bss dec hex filename
- 2915 0 0 2915 b63 libc/inet/ns_name_old.o
+ 2656 0 0 2656 a60 libc/inet/ns_name.o
- 958 0 0 958 3be libc/inet/ns_parse_old.o
+ 898 0 0 898 382 libc/inet/ns_parse.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Carmelo Amoroso [Fri, 26 Aug 2011 08:26:17 +0000 (10:26 +0200)]
ldso: fix build with PRELINK enabled and !TLS
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer [Fri, 26 Aug 2011 07:40:30 +0000 (09:40 +0200)]
ldso: add missing include
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:56 +0000 (00:30 +0200)]
inet: build all res_* and ns_* functions conditionally
This patch changes the build system so that all DNS resolver related
functions (ie, those starting with dn_, ns_ and res_) are only built if
UCLIBC_HAS_RESOLVER_SUPPORT is set. This means that the libc will lack
support for things that existed in the library before unless this new
config option is set. On the other hand, if users really need support
for resolver functions, they now get a more complete set, and the
library is smaller than before it is deselected.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:55 +0000 (00:30 +0200)]
include/resolv.h: provide __res_state._u even if !__UCLIBC_HAS_IPV6__
This struct is used for IPv4 as well, so only make the members
conditional that are purely used by IPv6.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:54 +0000 (00:30 +0200)]
inet/resolv: add res_ninit and res_nclose
Some reordering of existing functions was necessary in order to provide
this functionality.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:53 +0000 (00:30 +0200)]
inet/resolv: add res_mkquery
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:52 +0000 (00:30 +0200)]
inet/resolv: add ns_initparse, ns_parserr, ns_skiprr and ns_msg_getflag
There are build 'ifdef L_ns_parse'.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:51 +0000 (00:30 +0200)]
inet/resolv: add dn_skipname and ns_name_skip
One uses the other, so add them in one go.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:50 +0000 (00:30 +0200)]
inet/resolv: Add dn_comp
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:49 +0000 (00:30 +0200)]
inet/resolv: add ns_name_pton, ns_name_pack and ns_name_compress
These are built '#ifdef L_ns_name'
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:48 +0000 (00:30 +0200)]
inet/resolv: add ns_{put,get}{16,32}
This patch introduces a new config directive
'UCLIBC_HAS_RESOLVER_SUPPORT' and adds the new symbols conditionally.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:47 +0000 (00:30 +0200)]
libc/inet/resolv.c: comment on #endif lines
While reading this file, I found it rather confusing to relate the
"endif" lines to their opening counter-part. This patch adds comments to
most of these lines to denote what the actually do.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Daniel Mack [Tue, 12 Jul 2011 22:30:46 +0000 (00:30 +0200)]
extra/Configs/Config.in: drop "default n" lines
"default n" is the default default. No need to mention it explicitly.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Kevin Cernekee [Sun, 24 Jul 2011 08:19:14 +0000 (01:19 -0700)]
ldso/mips: Clean up warnings
Trivial fixes for these warnings:
CC ldso/libdl/libdl.oS
In file included from ldso/ldso/ldso.c:46:0:
ldso/ldso/mips/elfinterp.c:88:1: warning: no previous prototype for '__dl_runtime_pltresolve'
ldso/ldso/ldso.c: In function '_dl_get_ready_to_run':
ldso/ldso/ldso.c:475:5: warning: assignment makes pointer from integer without a cast
In file included from ldso/ldso/ldso.c:1097:0:
ldso/ldso/dl-elf.c: In function '_dl_load_elf_shared_library':
ldso/ldso/dl-elf.c:811:3: warning: assignment makes pointer from integer without a cast
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Kevin Cernekee [Sun, 24 Jul 2011 08:19:13 +0000 (01:19 -0700)]
ldso/mips: dlsym() incorrectly matches undefined symbols
check_match() relies on checking for (sym->st_value == 0) to see if the
symbol is undefined. This works reasonably well on most architectures,
such as ARM or i386:
$ readelf -s /lib32/libcap.so.2 | grep -E "\<malloc\>"
17:
00000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.0 (2)
However, on MIPS, libbfd puts nonzero data in the st_value field to
facilitate resetting the symbol's GOT entry if the library that defines
the symbol gets unloaded:
$ mipsel-linux-readelf -s libfoo.so | grep -E "\<malloc\>"
74:
00003140 0 FUNC GLOBAL DEFAULT UND malloc
This can cause check_match to report a false positive when examining the
external symbol reference. Consequently dlsym() will return a bad pointer
to the caller.
Use the special MIPS logic from glibc-ports-2.13 to avoid this situation.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Kevin Cernekee [Sun, 24 Jul 2011 08:19:12 +0000 (01:19 -0700)]
ldso/mips: Enable bootstrap relocations
_dl_reltypes_tab[] is an array of pointers to constant strings:
Contents of section .data:
20000
01000000 02000000 00000000 00000000 ................
20010
70e50000 7ce50000 88e50000 94e50000 p...|...........
^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^^^^^^
(pointers are LE)
Contents of section .rodata:
e570
525f4d49 50535f4e 4f4e4500 525f4d49 R_MIPS_NONE.R_MI
e580
50535f31 36000000 525f4d49 50535f33 PS_16...R_MIPS_3
e590
32000000 525f4d49 50535f52 454c3332 2...R_MIPS_REL32
These pointers require relocation:
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
00000000 R_MIPS_NONE *ABS*
0001fffc R_MIPS_REL32 *ABS*
00020010 R_MIPS_REL32 *ABS*
00020014 R_MIPS_REL32 *ABS*
00020018 R_MIPS_REL32 *ABS*
On MIPS, only GOT relocations are currently handled by ldso during
startup. The net effect is that when running with "LD_DEBUG=reloc",
ldso itself crashes before the program even starts. This is caused
by _dl_dprintf() dereferencing an unadjusted string pointer such as
0xe570.
This patch enables the missing relocations and allows LD_DEBUG to work
as designed.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Richard Braun [Sat, 9 Jul 2011 12:06:52 +0000 (14:06 +0200)]
libdl: add option for controlling dl_cleanup
When debugging memory leaks with Valgrind, it is required that
dynamically loaded shared objects are not unloaded when a process exits,
otherwise symbols from those files aren't correctly resolved in
allocation traces. This patch adds the LDSO_NO_CLEANUP configuration
option to control this behaviour.
Signed-off-by: Richard Braun <rbraun@sceen.net>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Douglas Mencken [Tue, 12 Jul 2011 07:39:17 +0000 (09:39 +0200)]
ldso: fix build error due to missing variable 'st'
Fix a build error triggered when LDSO_PRELOAD_FILE_SUPPORT is enabled
due to missing definition of 'st' variable.
Signed-off-by: Douglas Mencken <dougmencken@gmail.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Khem Raj [Thu, 7 Jul 2011 16:50:17 +0000 (09:50 -0700)]
x86_64/elfinterp.c: Protect missed debug _dl_printf with __SUPPORT_LD_DEBUG__
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Khem Raj [Thu, 30 Jun 2011 07:32:11 +0000 (00:32 -0700)]
mips/signalfd.h: SFD_NONBLOCK for mips is 0200 unlike 04000 commonly
Exposed by udev 171 which uses signalfd
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Khem Raj [Tue, 28 Jun 2011 00:48:18 +0000 (17:48 -0700)]
Config.in.arch: Free UCLIBC_HAS_FPU setting from depending on UCLIBC_HAS_FLOATS
UCLIBC_HAS_FLOATS and UCLIBC_HAS_FPU are denoting two different aspects.
UCLIBC_HAS_FLOATS covers the floating point operations which has nothing
to do if you have FPU or not.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Carmelo Amoroso [Mon, 27 Jun 2011 13:26:22 +0000 (15:26 +0200)]
ldso: arm: fix build when prelinking is enabled.
This is a post merge fix to address build issue when PRELINK
support is enabled.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Fri, 1 Jul 2011 07:48:01 +0000 (09:48 +0200)]
Merge remote-tracking branch 'origin/master' into prelink
* origin/master:
libc: add missing lock initialization in vswprintf
libubacktrace: fix makefile clean target
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Maksim Rayskiy [Fri, 17 Jun 2011 01:14:01 +0000 (18:14 -0700)]
libc: add missing lock initialization in vswprintf
Unlike vsnprintf, vswprintf does not properly initialize locking
elements of FILE structure, which in some unfortunate cases can result
in lockups in _vfwprintf_internal.
Interesting, the initialization code was removed in
2a915734a32c5aec9a6a76c13bcb074d30e64171 at the same time as it was added
to vsnprintf.
Signed-off-by: Maksim Rayskiy <mrayskiy@broadcom.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Fri, 24 Jun 2011 14:27:36 +0000 (16:27 +0200)]
libubacktrace: fix makefile clean target
Fix makefile lean target removing the old reference to the non
existing libubacktrace_ARCH_OUT variable.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>