Age | Commit message (Collapse) | Author |
|
Only mips/x86/x86_64 needs a special version of lowlevellock.h.
No regressions found.
|
|
|
|
Similar to a changeset planned in GNU C library remove
any assembly code from sysdep-cancel.h. This allows
to port to new architectures in a simpler way.
|
|
Follow GNU C Library from c579f48edba88380635ab98cb612030e3ed8691e
and remove the PID caching. These simplifies the architecture specific
assembly code.
The run of the test suite found no regressions, it even solves
some of the test failures for x86/x86_64/sparc.
Reviewed-by: Max Filippov <jcmvbkbc@gmail.com>
Reviewed-by: Vineet Gupta <Vineet.Gupta1@synopsys.com>
Acked-by: Matthew Fortune <Matthew.Fortune@imgtec.com>
Acked-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
|
|
|
|
This reverts commit c13f823941b103cf744929e5afcb3e2bc1342354.
|
|
Similar to musl libc a single libc has many benefits and solves
some open issues with uClibc-ng.
- no pthread_mutex_* weak symbols exported anymore
- applications no longer failing to link when either
-lrt or -lpthread are missing for dynamic and static linking mode
- smaller C library
- slightly better runtime performance
|
|
|
|
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Automatic patching via two oneliners by Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>:
sed -i -e 's/[[:space:]]pt-vfork\.[csS]//' -e '/^ASFLAGS-pt-vfork\./d' $(git grep -l pt-vfork libpthread/nptl/sysdeps)
find libpthread/nptl -name "*pt-vfork*" -exec git rm {} \;
Reported-By: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
define NOT_IN_libc / IS_IN_libxxx appropriately
to fix pthread_once
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
This matches a similar change made to glibc.
No functional changes here.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Make a local copy of the tid value to avoid a race condition,
as the value could have been changed to 0, thus using a pointer
it would have been passed to the lll_futex_wait modified.
Signed-off-by: Stas Sergeev <stsp@users.sourceforge.net>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
use __ret uniformly to avoid shadow warnings as seen on x86_64.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
The SSP_ALL_CFLAGS in nptl arch CFLAGS leaks out and forces things
like dl-support.c, brk.c, sbrk.c memcpy, etc to be built with
-fstack-protector-all. This is bad when linking statically since
initializing TLS will call those functions before SSP is initialized.
The libpthread itself will still be built with -fstack-protector-all
due to CFLAGS-nptl has SSP_ALL_CFLAGS in libpthread/nptl/Makefile.in
Thanks to Timo Teras for helping with this.
Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Now automatically picks the correct (arch and subarch specific) impls in
favour of generic impls.
make O=/tmp/objs PREFIX=/my/sysroot -j
works now as expected (both out-of-tree as well as parallel-safe).
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
This patch fixes a build problem into the lowlevellock.S
when support FUTEX_CLOCK_REALTIME (kernel newer than 2.6.29).
__have_futex_clock_realtime symbol is not defined when set
__ASSUME_FUTEX_CLOCK_REALTIME. The same is on i386 arch.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
also cleanup some PIC (should be __PIC__) that snuck in
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
|
This patch will re-factor and simplify sysdep headers
handling for nptl branch.
The reason is to use some useful macros in asm code (i.e. ENTRY()) that are available
only into nptl branch because are defined in sysdep.h header under the nptl folder
even if they are not related to NPTL at all (this was likely due to a bad choice done
at the early stage of NPTL porting).
This is a required steps for integrating into master branch some asm code available in
nptl branch for sh4.
The main changes are described below:
nptl/sysdeps/generic/sysdep.h (moved) ---> libc/sysdeps/linux/common/sysdep.h
nptl/sysdeps/arm/sysdep.h (moved) ---> libc/sysdeps/linux/arm/sysdep.h
nptl/sysdeps/sh/sysdep.h ---------------------|
nptl/sysdeps/unix/sh/sysdep.h ----------------|
nptl/sysdeps/unix/sysv/linux/sh/sysdep.h -----|
nptl/sysdeps/unix/sysv/linux/sh/sh4/sysdep.h -|
|(merged) ---> libc/sysdeps/linux/sh
nptl/sysdeps/unix/sysdep.h (deleted)
Similarly the mips and arm sysdep.h should be merged and updated as for sh arch.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
Based on Peter Mazinger's comments on a recent commit, I decided
to get rids of all occurrences of PIC changing them to __PIC__
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|
|
targetting arm,sh,i386,mips,sparc for now
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
|