OSDN Git Service
Austin Foxley [Wed, 28 Apr 2010 18:34:32 +0000 (11:34 -0700)]
include dlfcn.h in ldso.h to get RTLD_NODELETE definition
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Wed, 28 Apr 2010 17:35:55 +0000 (10:35 -0700)]
fix a few build errors for the no threads case
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Tony Wu [Wed, 28 Apr 2010 09:56:03 +0000 (17:56 +0800)]
Fix typo (OPTIMIZATIONS -> OPTIMIZATION)
Signed-off-by: Tony Wu <tung7970@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Gabor Juhos [Tue, 6 Apr 2010 15:56:11 +0000 (17:56 +0200)]
MIPS: restore INLINE_SYSCALL macro
The MIPS specific INLINE_SYSCALL macro has been renamed to
INLINE_SYSCALL_NCS with:
763bbf9e9a27426c9be8322dca5ddf2cb4dbc464
syscall: unify part 2: NCS variety
Declare common NCS (non-constant syscall) variants and convert the
existing ports over to this.
This change breaks system calls. The code generated with using of the
new macro does not obey the restartable syscall convention used by the
linux kernel. When it tries to restart the syscall the errno value is
not being replaced by the syscall number.
This causes weird behaviour of the 'ping' command in busybox for
example:
root@OpenWrt:/# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254): 56 data bytes
64 bytes from 192.168.1.254: seq=0 ttl=128 time=6.292 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=1 ttl=128 time=0.719 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=2 ttl=128 time=0.489 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=3 ttl=128 time=0.486 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=4 ttl=128 time=0.487 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=5 ttl=128 time=0.939 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=6 ttl=128 time=0.971 ms
ping: recvfrom: Function not implemented
64 bytes from 192.168.1.254: seq=7 ttl=128 time=0.488 ms
ping: recvfrom: Funct^C
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Andreas Schultz [Tue, 27 Apr 2010 15:43:43 +0000 (08:43 -0700)]
nptl: mips needs updated clone() implementation
Signed-off-by: Andreas Schultz <andreas.schultz@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Roman I Khimov [Tue, 27 Apr 2010 11:19:15 +0000 (15:19 +0400)]
libc/x86_64: use ELF-compatible definitions for assembler
Fixes open/read/write/close breakage with NPTL on x86_64 (due to missing
'.type' declaration).
Done this way because there are already ELF-style definitions in assemebler
code for x86_64 and looks like HAVE_ELF is not defined and used this days.
Or the other way around, it'd be a bit strange for x86_64 not to have ELF.
Signed-off-by: Roman I Khimov <khimov@altell.ru>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Roman I Khimov [Tue, 27 Apr 2010 11:22:07 +0000 (15:22 +0400)]
libc/regex: fix internal_function declarations
Build failed with
| In file included from libc/misc/regex/regex.c:59:
| libc/misc/regex/regexec.c:315: error: conflicting types for 're_search_2_stub'
| libc/misc/regex/regexec.c:44: note: previous declaration of 're_search_2_stub' was here
| libc/misc/regex/regexec.c:358: error: conflicting types for 're_search_stub'
| libc/misc/regex/regexec.c:49: note: previous declaration of 're_search_stub' was here
.... etc
Signed-off-by: Roman I Khimov <khimov@altell.ru>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Roman I Khimov [Tue, 27 Apr 2010 14:04:24 +0000 (18:04 +0400)]
libpthread/x86_64: fix clean
Signed-off-by: Roman I Khimov <khimov@altell.ru>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Mon, 26 Apr 2010 05:06:36 +0000 (22:06 -0700)]
enable building __fcntl_nocancel, as it used unconditionally now
also sync up not-cancel.h headers between all three thread libraries
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Roman I Khimov [Sun, 25 Apr 2010 18:55:11 +0000 (22:55 +0400)]
Makefile.in: install sgtty.h
Proper and useful header, for example used by pacemaker.
Signed-off-by: Roman I Khimov <khimov@altell.ru>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Carmelo Amoroso [Sun, 25 Apr 2010 18:38:19 +0000 (20:38 +0200)]
nptl: Harmonize objects and headers makefile clean targets
Update all the nptl clean targets (both objects and headers) to
use the new syntax using CLEAN_<full_path> and HEADER_<full_path>.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Sun, 25 Apr 2010 14:15:26 +0000 (16:15 +0200)]
build: Fix infinite loop when no threading support is enabled
The build loops forever due to when invoking make $(pregen-headers-y)
and $(pregen-headers-y) is empty (no thread support).
Parallel build should continue to work as well.
It fixes Bugzilla #1633.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Roman I Khimov [Sun, 25 Apr 2010 11:04:59 +0000 (15:04 +0400)]
libpthread/nptl_db: define NOT_IN_libc
NPTL build for x86_64 failed with
LD libthread_db-0.9.32-git.so
.../ld: libpthread/nptl_db/libthread_db_so.a(td_ta_event_getmsg.oS): relocation R_X86_64_PC32 against undefined symbol `__GI_memset' can not be used when making a shared object; recompile with -fPIC
Signed-off-by: Roman I Khimov <khimov@altell.ru>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Carmelo Amoroso [Sun, 25 Apr 2010 08:37:01 +0000 (10:37 +0200)]
nptl_db: Remove compiler warning due to old-style function definition
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Sun, 25 Apr 2010 08:36:37 +0000 (10:36 +0200)]
nptl: Remove compiler warning due to old-style function definition
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Sun, 25 Apr 2010 08:14:48 +0000 (10:14 +0200)]
libc: Remove compiler warning due to old-style function definition
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Austin Foxley [Fri, 23 Apr 2010 14:27:50 +0000 (07:27 -0700)]
change ABI_VERSION back to just include the major number
By default, GCC hard codes the name for ld.so to /lib/ld-uClibc.so.0
so our default should match that. If distribution makers want to change
it, they need to change the default gcc configuration as well.
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Fri, 23 Apr 2010 13:55:42 +0000 (06:55 -0700)]
Merge commit 'origin/master' into nptl
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Natanael Copa [Thu, 22 Apr 2010 14:52:48 +0000 (14:52 +0000)]
utils: fix install prefix for getconf
So we don't get /usr/usr/bin/getconf when DEVEL_PREFIX="/usr"
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Timo Teräs [Thu, 22 Apr 2010 05:53:43 +0000 (05:53 +0000)]
nptl: fix dynamic initialization of libpthread
If libpthread get's pulled in via dlopen(), we need to do libpthread
initialization in dlopen(). Achieve this by making initializer function
out of __pthread_initialize_minimal_internal. Add the proper linker
flags and make it callable multiple times.
Add also nodelete flag which ensures that libpthread will not get
unmapped after it's been loading. Though, ld.so does not yet
support this.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Thu, 22 Apr 2010 11:06:41 +0000 (11:06 +0000)]
nptl: fix libc internal, dynamically enabled locking
Final iteration to fix libc internal locking if libpthread is pulled
in by dlopen call (directly or indirectly).
We cannot really use the weak symbol trick for shared build, since
the symbols won't get refreshed if libpthread is pulled in dynamically.
In glibc, they have #ifdef SHARED magic to either use pthread_functions
table, or weaks. But as we shared object files with both builds, this
does not sounds good either.
The reintroduces the libc weaks.c, but uses them now only with static
build. For dynamic build, we still use the symbols with same name, but
provide weaks in forward.c so they end up dereferencing the
pthread_functions table indirectly if we are not linked to libpthread.
Mutex initialization is hard coded as inline, as it needs to happen even
if libpthread is not initially loaded.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Thu, 22 Apr 2010 08:28:10 +0000 (08:28 +0000)]
ldso: support RTLD_NODELETE and DF_1_NODELETE
Honor the nodelete flags so we don't delete shared library if it's
sticky. This is useful for libpthread if it gets pulled in by a
dlopen'ed library.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Thu, 22 Apr 2010 05:43:00 +0000 (05:43 +0000)]
nptl: fix warnings of shadowing __self
Stdio locking macroes do:
void *__self = THREAD_SELF;
But THREAD_SELF uses __self also internally which causes shadowing
warnings. Just rename the outer variable for now. Might be an idea
to convert the macroes to static inline functions.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Thu, 22 Apr 2010 05:41:17 +0000 (05:41 +0000)]
nptl: fix malloc library locking
Update malloc library to use internal uclibc locking primitives
to get the libpthread calls correct.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Natanael Copa [Tue, 20 Apr 2010 14:49:30 +0000 (14:49 +0000)]
nptl: proper soname handling
Since sublevel releases are not ABI compatible we need to adjust
the soname to include the sublevel version.
This makes it possible to install ABI incompatible versions of the
library side by side so clean upgrades are possible.
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Tue, 20 Apr 2010 08:59:42 +0000 (11:59 +0300)]
nptl: remove unneeded libc-lock.h include
I semi-accidentally added include for libc-lock.h because the intention
was to use locking macroes from there. However, we ended up using using
the weak alias stuff. This is additionally good since now this can result
in compile errors like:
In file included from /toolchain/include/bits/uClibc_mutex.h:16,
from /toolchain/include/bits/uClibc_stdio.h:107,
from /toolchain/include/stdio.h:72,
from /work/freetype-2.3.11/include/freetype/config/ftstdlib.h:100,
from ./builds/unix/ftconfig.h:43,
from builds/unix/ftsystem.c:21:
/toolchain/include/bits/libc-lock.h:309: error: expected '=', ',',
';', 'asm' or '__attribute__' before 'void'
Remove the unneeded include causing breakage.
Reported-by: Kevin Day <thekevinday@gmail.com>
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teras [Fri, 16 Apr 2010 13:56:00 +0000 (16:56 +0300)]
nptl: mark forwarded functions protected
The libc stubs should never override the libpthread provided
functions inside libpthread, otherwise the struct pthread_functions
that is used by the forwarder stubs goes bad.
Signed-off-by: Timo Teras <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teras [Fri, 16 Apr 2010 13:29:46 +0000 (16:29 +0300)]
libc: remove libc weak __pthreads_* wrappers
It is not possible to override for libpthread to override
the weak libc definitions. This has never worked in uclibc, and
does no longer work in glibc either (unless you use LD_DYNAMIC_WEAK).
The proper thing to do is have weak prototypes in libc, and
definitions in libpthread only. This way libc runs even if
those functions are not defined, but just needs to protect
against the NULL values (done by implementing __uclibc_maybe_call).
This fix the problems if libc is linked before libpthread or
if libpthread is pulled by a dependency library.
Signed-off-by: Timo Teras <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teras [Fri, 16 Apr 2010 12:43:15 +0000 (15:43 +0300)]
libc-symbols: add attribute_protected
Definition to use protected visibility.
Signed-off-by: Timo Teras <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Joakim Tjernlund [Fri, 16 Apr 2010 12:37:40 +0000 (15:37 +0300)]
ldso/i386: support protected symbols
Make sure protected symbols are not overridden by other modules.
Signed-off-by: Joakim Tjernlund <joakim.tjernlund@transmode.se>
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teras [Fri, 16 Apr 2010 12:34:26 +0000 (15:34 +0300)]
Revert "nptl: mark symbols with libc forwarder hidden"
This reverts most of commit
1610762362e651f86ca284ac59a1d7ec88034e4e.
Marking the symbols hidden is wrong, because libc accesses
the pthreads internal symbols for internal locking.
Signed-off-by: Timo Teras <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Thu, 15 Apr 2010 14:52:54 +0000 (17:52 +0300)]
nptl: fix libc sigtimedwait
It seems that
57e8823548ad6e65d33b2153edeb18fb0edc20e6 removed completely
sigtimedwait symbol from libc which is wrong. I hope there is not too
many other things like this.
Apparently the libc_hidden_* macros actually make previously hidden
symbols visible globally (creates alias from __GI_* to *). This is
probably ancient confusion from times when gcc did not support
visibility attribute and hiding symbols was done using hacks like
this.
This also adds attribute_hidden to the internal __sigtimedwait for
nptl case.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Thu, 15 Apr 2010 13:54:49 +0000 (16:54 +0300)]
nptl: fix libc sigaction signal checking
We should not check for SIGCANCEL in __libc_sigaction because nptl calls this
function to setup this signal. Nptl provides it's own override for sigaction
that checks that the user cannot override signals nptl uses internally.
Linuxthreads does not use SIGCANCEL at all so this affects nptl only.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Thu, 15 Apr 2010 09:13:16 +0000 (11:13 +0200)]
PTR_DEMANGLE: add documentation
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Austin Foxley [Wed, 14 Apr 2010 18:08:37 +0000 (11:08 -0700)]
Merge commit 'origin/master' into nptl
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Tue, 13 Apr 2010 17:27:57 +0000 (20:27 +0300)]
nptl: turn pointer demangling off
Currently the stub calls would
demangle the pointer that is never mangled. Alternatively, we could sync
nptl/sysdeps/unix/sysv/linux/libc_pthread_init.c with new glibc version
that properly mangles the pointers, but that would need more validation
to make sure that all struct pthread_function readers do demangling.
uclibc currently does not do pointer mangling everywhere so it's more
consistent to just disable it here too.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Tue, 13 Apr 2010 06:38:59 +0000 (09:38 +0300)]
linuxthreads.new: initialize stdio locking
uClibc requires the threading library to enable locking for
stdio, or the locking is not done at all.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Tue, 13 Apr 2010 05:53:58 +0000 (08:53 +0300)]
nptl: initialize stdio locking
uClibc requires the threading library to enable locking for
stdio, or the locking is not done at all.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Timo Teräs [Wed, 14 Apr 2010 17:01:33 +0000 (20:01 +0300)]
nptl: mark symbols with libc forwarder hidden
Add attribute_hidden to all symbols having libc forwarder. This prevents
recursive self calls which would happen if libc is before libpthread in
linking order: the forwarder functions would call itself via the function
table, since the libpthread symbols would get overwritten with libc ones.
This has not been a problem in glibc since there these symbols are marked
hidden with linker version-script. Since we don't use one, we need to mark
these explicitly.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Wed, 14 Apr 2010 13:09:43 +0000 (15:09 +0200)]
*.o[sS]: depend on pregen
allows 'make realclean && make utils' to behave properly
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Carmelo AMOROSO [Wed, 14 Apr 2010 05:24:46 +0000 (07:24 +0200)]
ldso: Add config option for controlling LD_PRELOAD
On hardened system it could be useful to disable the use
of LD_PRELOAD environment variable for preloading shared objects
before the system libraries. So this patch add a config option,
LDSO_PRELOAD_ENV_SUPPORT, to control this behaviour.
It is enabled by default.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Tue, 13 Apr 2010 14:14:14 +0000 (16:14 +0200)]
test: add API test
part1; Needs improvement:
Think about a sensible way to map feature sets to the mandated syms.
Our LEGACY stuff maps to OB, OBXSI for example.
A "normal" config should satisfy the BASE (i.e. $foo.SUSv4.syms)
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 14:39:38 +0000 (16:39 +0200)]
provide prototype for internal helper
i386 was missing a prototype for __tls_get_addr()
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 14:38:37 +0000 (16:38 +0200)]
temporarily turn on warnings for NPTL
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 13:47:16 +0000 (15:47 +0200)]
silence debug warning
variable 'tmp' set but not used
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 13:39:42 +0000 (15:39 +0200)]
whitespace cleanup
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Austin Foxley [Mon, 12 Apr 2010 13:18:10 +0000 (06:18 -0700)]
Merge remote branch 'origin/master' into nptl
Conflicts:
libc/unistd/confstr.c
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Natanael Copa [Mon, 12 Apr 2010 12:45:50 +0000 (12:45 +0000)]
nptl/sysdeps/unix/sysv/linux/i386: cleanup -DUSE___THREAD
Remove the -DUSE___THREAD from specific assembler files since its
used everywhere anyway.
This is a cleanup after
447a9d1cc181395c3e2ea77ea88e45dee4b30ce6
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 13:09:25 +0000 (15:09 +0200)]
attribute_optimize: fix typo with args
curious how
308f5c6e5fd56ea3d1a5512e34388aad788f1180 ever worked.. :P
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 13:04:23 +0000 (15:04 +0200)]
pthread_mutex_timedlock: always build with optimizations
avoids breakage with DODEBUG and lll_timedlock() constraints
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Timo Teräs [Mon, 12 Apr 2010 12:19:41 +0000 (12:19 +0000)]
nptl/sysdeps/unix/sysv/linux/i386: enable USE___THREAD for assembler
NPTL defines errno as __thread variable. Define USE___THREAD so proper
errno assignment is used in assembly files.
This fixes segfault while building python.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 10:43:45 +0000 (12:43 +0200)]
use user-provided host binaries
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 08:11:53 +0000 (10:11 +0200)]
prettify make clean
forgot extra/config
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 08:00:54 +0000 (10:00 +0200)]
*.i depend on generated headers
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Mon, 12 Apr 2010 07:43:08 +0000 (09:43 +0200)]
silence warning about undefined preprocessor token
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Carmelo Amoroso [Mon, 12 Apr 2010 07:23:43 +0000 (09:23 +0200)]
libc_regex: __libc_lock primitives are actually available on uClibc
__libc_lock primitives are actually available on uClibc when threading
support is enable, so in this case they can be used.
It also fixes the following compiler warnings:
In file included from libc/misc/regex/regex.c:55:
libc/misc/regex/regex_internal.h:49:1: warning: "__libc_lock_define" redefined
[SNIP]
libc/misc/regex/regex_internal.h:50:1: warning: "__libc_lock_init" redefined
[SNIP]
libc/misc/regex/regex_internal.h:51:1: warning: "__libc_lock_lock" redefined
[SNIP]
libc/misc/regex/regex_internal.h:52:1: warning: "__libc_lock_unlock" redefined
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
(cherry picked from commit
65f9ccdafd008abd9892dfc46fb9737ec4d964c5)
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Mon, 12 Apr 2010 07:23:43 +0000 (09:23 +0200)]
libc_regex: __libc_lock primitives are actually available on uClibc
__libc_lock primitives are actually available on uClibc when threading
support is enable, so in this case they can be used.
It also fixes the following compiler warnings:
In file included from libc/misc/regex/regex.c:55:
libc/misc/regex/regex_internal.h:49:1: warning: "__libc_lock_define" redefined
[SNIP]
libc/misc/regex/regex_internal.h:50:1: warning: "__libc_lock_init" redefined
[SNIP]
libc/misc/regex/regex_internal.h:51:1: warning: "__libc_lock_lock" redefined
[SNIP]
libc/misc/regex/regex_internal.h:52:1: warning: "__libc_lock_unlock" redefined
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Carmelo Amoroso [Sun, 11 Apr 2010 20:56:05 +0000 (22:56 +0200)]
ldso_sh: Provide only one definition for elf_machine_type_class
It doesn't need to provide different definition of elf_machine_type_class
macro depending on TLS support.
It also fixes build for sh architecture when thread support is off:
CC ldso/ldso/ldso.oS
In file included from ./ldso/ldso/sh/dl-sysdep.h:9,
from ./ldso/include/dl-string.h:11,
from ./ldso/include/ldso.h:40,
from ldso/ldso/ldso.c:33:
./include/tls.h:6:22: error: tls.h: No such file or directory
make: *** [ldso/ldso/ldso.oS] Error 1
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Denys Vlasenko [Fri, 9 Apr 2010 21:17:34 +0000 (23:17 +0200)]
resolv: tentatively fix usage of uninitialized DNS parameters
See "Possible regression from timeout commit for resolv.conf" thread.
Also remove superfluous NULL check.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Natanael Copa [Fri, 9 Apr 2010 13:20:59 +0000 (06:20 -0700)]
Fixes NPTL build on x86.
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Thu, 8 Apr 2010 08:33:53 +0000 (10:33 +0200)]
.gitignore getconf binaries
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 8 Apr 2010 08:33:09 +0000 (10:33 +0200)]
confstr: properly stringify version parts
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Wed, 7 Apr 2010 20:44:07 +0000 (22:44 +0200)]
pthread_{attr_,}{s,g}etaffinity: cleanup symbol names
fixes typo in
a1ee5b32fc698297149c770417354441ee62701e which forgot to
rename __pthread_attr_getaffinity_np to pthread_attr_getaffinity_np.
Thanks to Andre DRASZIK for mentioning my omission.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Austin Foxley [Tue, 6 Apr 2010 17:05:34 +0000 (10:05 -0700)]
utils .gitignore update to include getconf
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Tue, 6 Apr 2010 16:16:02 +0000 (09:16 -0700)]
correctly quote version in confstr
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Tue, 6 Apr 2010 15:58:29 +0000 (08:58 -0700)]
Merge commit 'origin/master' into nptl
Conflicts:
libc/misc/utmp/utent.c
libc/sysdeps/linux/i386/bits/syscalls.h
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Tue, 6 Apr 2010 15:17:30 +0000 (17:17 +0200)]
getconf: print arbitrary GNU_LIBPTHREAD_VERSION string
the NPTL should probably print the version-string of the glibc it's
compatible with and not the uClibc version (check what mysql expects).
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Tue, 6 Apr 2010 14:19:46 +0000 (16:19 +0200)]
getconf: move to utils/
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Gabor Juhos [Tue, 6 Apr 2010 07:55:19 +0000 (09:55 +0200)]
Fix use-after-free bug in __dns_lookup
If the type of the first answer does not match with the requested type,
then the dotted name was freed. If there are no further answers in
the DNS reply, this pointer was used later on in the same function.
Additionally it is passed to the caller, and caused strange
behaviour.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Denys Vlasenko [Tue, 6 Apr 2010 03:33:01 +0000 (05:33 +0200)]
i386/bits/syscalls.h: more compact, but stack-hungry syscall code. disabled so far
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Tue, 6 Apr 2010 03:32:09 +0000 (05:32 +0200)]
i386/bits/syscalls.h: explain _BITS_SYSCALLS_ASM
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Tue, 6 Apr 2010 03:29:26 +0000 (05:29 +0200)]
i386/bits/syscalls.h: generate better code using more restrictive asm constraints
Example: time() doesn't push/pop two registers now, and is smaller:
<__GI_time>:
-57 push %edi
-8b 7c 24 08 mov 0x8(%esp),%edi
-53 push %ebx
-89 fb mov %edi,%ebx
+8b 4c 24 04 mov 0x4(%esp),%ecx
+87 cb xchg %ecx,%ebx
b8 0d 00 00 00 mov $0xd,%eax
cd 80 int $0x80
-5b pop %ebx
-5f pop %edi
+87 cb xchg %ecx,%ebx
c3 ret
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Tue, 6 Apr 2010 03:28:29 +0000 (05:28 +0200)]
i386/bits/syscalls.h: explain how it works. no code changes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 5 Apr 2010 17:27:41 +0000 (19:27 +0200)]
libutil/login: was totally broken. fixed
Also made login() and logout() usable with utmpname(non_std_utmp_file)
text data bss dec hex filename
111 0 0 111 6f libutil/login.o
217 0 0 217 d9 libutil/login.o
text data bss dec hex filename
164 0 0 164 a4 libutil/logout.o
134 0 0 134 86 libutil/logout.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 5 Apr 2010 17:25:54 +0000 (19:25 +0200)]
utent: do not create extra static functions if !THREADS
text data bss dec hex filename
547 8 384 939 3ab libc/misc/utmp/utent.o
519 8 384 911 38f libc/misc/utmp/utent.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 4 Apr 2010 23:32:19 +0000 (01:32 +0200)]
regex_old: convert static flag variable to smallint
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 4 Apr 2010 23:31:27 +0000 (01:31 +0200)]
getutid is not used internally, removing hidden_proto
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Austin Foxley [Fri, 2 Apr 2010 17:29:00 +0000 (10:29 -0700)]
nptl needs stdio futexes enabled.
this got reverted in the merge I just did
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Fri, 2 Apr 2010 16:25:02 +0000 (09:25 -0700)]
poll.c: fix incorrect merge
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Fri, 2 Apr 2010 16:18:09 +0000 (09:18 -0700)]
Revert "remove config knobs that belong to the nptl branch"
This reverts commit
de82658a05de0ace6f3d261dedc358d3a14f3681.
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley [Fri, 2 Apr 2010 16:17:30 +0000 (09:17 -0700)]
Merge commit 'origin/master' into nptl
Conflicts:
Makefile.in
extra/Configs/Config.in
libc/sysdeps/linux/common/bits/kernel-features.h
libc/sysdeps/linux/common/poll.c
libc/sysdeps/linux/common/sysdep.h
libc/sysdeps/linux/sh/sysdep.h
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Bernhard Reutner-Fischer [Fri, 2 Apr 2010 16:01:41 +0000 (18:01 +0200)]
bump version to 0.9.32-git
NPTL merge candidate, finally!
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 2 Apr 2010 15:34:27 +0000 (17:34 +0200)]
Release 0.9.31
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Tue, 30 Mar 2010 15:18:03 +0000 (17:18 +0200)]
resolv: DEBUG-print nameserver we talk to
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Tue, 30 Mar 2010 09:45:48 +0000 (11:45 +0200)]
utils: hide comment if !V
Bernhard Reutner-Fischer [Thu, 25 Mar 2010 15:42:04 +0000 (16:42 +0100)]
pass CFLAGS-dir to CC-m
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Thu, 25 Mar 2010 14:17:10 +0000 (15:17 +0100)]
prettify make clean
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Tobias Klauser [Thu, 18 Mar 2010 11:24:08 +0000 (12:24 +0100)]
nios2: Define INTERNAL_SYSCALL_NCS, use common sycall defines
Define the nios2 version of INTERNAL_SYSCALL_NCS and remove all sycall
defines already defined by the common syscall defines.
This will make the master branch of uClibc compile again for nios2.
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Tobias Klauser [Thu, 18 Mar 2010 11:24:07 +0000 (12:24 +0100)]
nios2: Update fcntl.h from m68k
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Michael Deutschmann [Wed, 17 Mar 2010 12:36:34 +0000 (13:36 +0100)]
lift printf field width limit
uClibc mishandles printf field width limits larger than 40959, as a
result of misguided overflow-protection code. This causes spurious test
failures with GNU coreutils, which depends on "%65536s" and "%
20000000f"
working according to spec.
Signed-off-by: Michael Deutschmann <michael@talamasca.ocis.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Tobias Klauser [Mon, 15 Mar 2010 10:04:05 +0000 (11:04 +0100)]
nios2: Add sys/user.h
This is a fixed version containing copyright information. The patch should now
apply using 'git am'.
linux/user.h is no longer exported during kernel make headers_install
Signed-off-by: Atle Nissestad <atle@nissestad.no>
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 23:31:36 +0000 (00:31 +0100)]
config: tweak text
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 20:58:29 +0000 (21:58 +0100)]
buildsys: touchup 'make dist' a tiny bit
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 20:50:18 +0000 (21:50 +0100)]
bump version
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 20:49:21 +0000 (21:49 +0100)]
bump version to 0.9.31-rc1
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 18:13:49 +0000 (19:13 +0100)]
buildsys: Fix O= PREFIX= case
make sure that something like:
$ rm -rf /dev/shm/o/* /dev/shm/o/.conf* /dev/shm/DELME
$ time (make defconfig O=/dev/shm/o 2>&1 >& /dev/null && make \
install_dev -j O=/dev/shm/o PREFIX=/dev/shm/DELME 2>&1 >& /dev/null)
works
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 17:56:49 +0000 (18:56 +0100)]
buildsys: fix dir order-only prereq of unifdef
|$(@D) -> zilch, so spell it out
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 17:14:16 +0000 (18:14 +0100)]
add MULTILIB_DIR: Path component for libdirs
forgot to checkin this file
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 16:21:02 +0000 (17:21 +0100)]
config: support make defconfig O=/f/o/o
previously wanted to create the temporary cfg file in the srcdir (which
failed on a RO srcdir)
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Bernhard Reutner-Fischer [Fri, 12 Mar 2010 16:06:35 +0000 (17:06 +0100)]
add MULTILIB_DIR: Path component for libdirs
defaults to "lib". Other prominent values include "lib32" or "lib64"
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>