summaryrefslogtreecommitdiffstats
path: root/libc/sysdeps/linux/common
Commit message (Collapse)AuthorAgeFilesLines
...
* use common sigthread.hPeter S. Mazinger2011-03-031-1/+7
| | | | | | | NPTL build did not use the correct bits/sigthread.h, use a common version avoiding this. Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
* nptl:arm: add a wrapper for .cfi_sections pseudo-opsCarmelo Amoroso2011-02-251-0/+5
| | | | | | | | | | | | | | | | ARM disables by default the support for ASM CFI directives. Anyway using an old version of binutils that does not support some new pseudo-op, the build fails as below: AS libpthread/nptl/sysdeps/unix/sysv/linux/close.oS libpthread/nptl/sysdeps/unix/sysv/linux/close.S: Assembler messages: libpthread/nptl/sysdeps/unix/sysv/linux/close.S:9: Error: unknown pseudo-op: `.cfi_sections' The problem is that the .cfi_sections pseudo should be wrapped by a macro that expands to nothing when the CFI is off. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com> CC: Khem Ray <ray.khem@gmail.com>
* unify stub logicMike Frysinger2011-02-2427-259/+189
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* nptl: imit waitpid just for MIPS O32Bernhard Reutner-Fischer2011-02-221-1/+0
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* buildsys: fix inverted logic with thread implsBernhard Reutner-Fischer2011-02-161-3/+2
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* buildsys: use kbuild styleBernhard Reutner-Fischer2011-02-141-96/+39
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* buildsys: remove wrong fileBernhard Reutner-Fischer2011-02-141-1/+1
| | | | | | Somehow Makefile.in ended in there, remove it. Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* nptl: fix typo in buildsysBernhard Reutner-Fischer2011-02-141-1/+1
| | | | | | 0f85b228 used 'filter-pout' instead of 'filter-out'. Fix that. Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* Fix GNU make v3.80 compatibilityKevin Cernekee2011-02-111-2/+6
| | | | | | | | Commits 1f6601a and 094d82d introduced the "else ifeq" construct, which requires GNU make v3.81 or higher. This breaks the build on RHEL4 hosts. Signed-off-by: Kevin Cernekee <cernekee@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* sync bits/socket.h PF_* / AF_* values with 2.6.38-rc3Peter Korsgaard2011-02-091-1/+21
| | | | | | | | | A number of new address / protocol families have been added over the years, so sync with Linux 2.6.38-rc3, adding CAN, ISDN, Phonet, Zigbee, .. which are starting to be used by applications. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* nptl/mips64: Fix build when using mips64 and ABIs other than o32Khem Raj2011-01-291-0/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libm: improve readability of math.h; expand comments and docsDenys Vlasenko2010-10-311-4/+9
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Fix msync() redefinition for noMMU buildBernhard Reutner-Fischer2010-10-271-0/+5
| | | | | | | | | | An architecture that _may_ have a MMU (and thus implements the msync syscall), but for which the kernel and uClibc are built as noMMU, we have a stub for msync. Thanks to Steven J. Magnani for noticing. Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* *: inline constant __sig{add,del}set and __sigismemberDenys Vlasenko2010-10-222-2/+35
| | | | | | | | | | | | text data bss dec hex filename - 318 4 0 322 142 libc/pwd_grp/lckpwdf.o + 312 4 0 316 13c libc/pwd_grp/lckpwdf.o - 166 0 1 167 a7 libc/stdlib/abort.o + 157 0 1 158 9e libc/stdlib/abort.o - 42 0 0 42 2a libc/sysdeps/linux/common/pause.o + 27 0 0 27 1b libc/sysdeps/linux/common/pause.o Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove superfluous libc_hidden_proto(memcpy) and #includeDenys Vlasenko2010-10-222-8/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* sleep: employ __USE_EXTERN_INLINES (with necessary fixes)Denys Vlasenko2010-10-221-4/+10
| | | | | | | | | | | __USE_EXTERN_INLINES was unused and had bit-rotted, had to fix it when it didn't work as intended at first. text data bss dec hex filename - 168 0 0 168 a8 libc/unistd/sleep.o + 146 0 0 146 92 libc/unistd/sleep.o Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* nptl: Fix libpthread build when UCLIBC_LINUX_SPECIFIC is disabledCarmelo Amoroso2010-09-202-2/+7
| | | | | | | | | | | | | | | | | NPTL library needs both madvise and statfs symbols, that are guarded by UCLIBC_LINUX_SPECIFIC option. This fix provides these symbols too when NPTL is used, indipendently by UCLIBC_LINUX_SPECIFIC choice. Otherwise libpthread link fails as below: LD libpthread-0.9.32-git.so libpthread/nptl/libpthread_so.a(pthread_create.oS): In function `__free_tcb': pthread_create.c:(.text+0x1184): undefined reference to `madvise' libpthread/nptl/libpthread_so.a(sem_open.oS): In function `__where_is_shmfs': sem_open.c:(.text+0x764): undefined reference to `statfs' collect2: ld returned 1 exit status make: *** [lib/libpthread.so] Error 1 Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* libc: Fix cancellation handling in some C functionsSalvatore Cro2010-09-154-7/+72
| | | | | | | | | | According to POSIX.1-2008 standard, the following syscalls shall be cancellation points : waitid, sleep, fdatasync, ppoll. Further, if generic syscall is not available and stubs are configured, provide the stub implementation for function. Signed-off-by: Salvatore Cro <salvatore.cro@st.com> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* libc: Provide both getpgid and __getpgid symbolsCarmelo Amoroso2010-08-311-1/+4
| | | | | | | | | | Indeed unistd.h header does export '__getpgid' by default, while uClibc provide only 'getpgid' implementation. The 'getpgid' symbol is exported by standard header if __USE_XOPEN_EXTENDED is defined. This patch alignes uClibc implementation with standard header (matching with glibc behaviour). Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* math: isnan is a C99 featureHenning Heinold2010-08-051-6/+5
| | | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Henning Heinold <heinold@inf.fu-berlin.de>
* nptl: _POSIX_IPV6 depends on UCLIBC_HAS_IPV6Bernhard Reutner-Fischer2010-08-021-0/+8
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* new helper funcs for alloca/malloc with mmu/nommuMike Frysinger2010-07-273-6/+40
| | | | | | | | | | | | | The rpc rcmd code has some ugly ifdef mazes to handle mmu/nommu differences just to select alloca or malloc. Unify those with some helper macros in a new header, and then convert the rcmd code over to it. This is all geared towards fixing the getdents helper functions which only use alloca() atm. Now that we have helper functions, convert the getdents functions over too. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Reviewed-by: Steven J. Magnani <steve@digidescorp.com>
* remove trailing comma in enumBernhard Reutner-Fischer2010-07-271-1/+1
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* lutimes: add lutimes supportVladimir Zapolskiy2010-07-271-0/+38
| | | | | | | This patch adds lutimes library call support. Signed-off-by: Vladimir Zapolskiy <vzapolskiy@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* msync: skip if syscall is missingMike Frysinger2010-07-261-0/+4
| | | | | | | Some arches skip the msync syscall as it is useless (like nommu). So don't require it to build. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* nommu: fix building of fork.c when stubs are disabledMike Frysinger2010-07-261-1/+2
| | | | | | | We scrub the fork() prototype for nommu/no stubs, so attempting to get its type isn't going to work. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* include/param.h: Dont use ARG_MAX from kernel headersKhem Raj2010-07-091-1/+9
| | | | | | | * Use getrlimit for ARG_MAX in sysconf on nptl. * Define NCARGS directly instead of ARG_MAX Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nptl: fix buildsysBernhard Reutner-Fischer2010-07-061-1/+2
| | | | | | | | | 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>
* Revert "don't make __errno_location / __h_errno_location hidden"Austin Foxley2010-07-062-0/+4
| | | | | | | | This reverts commit 0d6ee549bc86fd330672a79d9a87d2c3825eea67. We need to find a solution that will work in shared and static libraries Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* don't make __errno_location / __h_errno_location hiddenPeter Korsgaard2010-07-052-4/+0
| | | | | | | | | | | | | Closes #2089 (https://bugs.busybox.net/show_bug.cgi?id=2089) __errno_location / __h_errno_location access has to go through the PLT like malloc/free, so the linuxthread variants gets used instead when compiling with -pthread. Based on http://github.com/mat-c/uClibc/commit/328d392c54aa5dc2b8e7f398a419087de497de2b Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* remove extra comma in lock macroAustin Foxley2010-07-031-1/+1
| | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* libc: define cfi_personality and cfi_lsdaBernhard Reutner-Fischer2010-06-171-0/+11
| | | | | | required for proper, current subarch handling Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* silence some warnings about missing prototypesBernhard Reutner-Fischer2010-06-114-3/+5
| | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* inotify: add inotify_init1 system call supportVladimir Zapolskiy2010-06-012-0/+17
| | | | | | | | This patch introduces support for inotify_init1 system call, found since Linux 2.6.27. Signed-off-by: Vladimir Zapolskiy <vzapolskiy@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bits/socket.h: add SOCK_CLOEXEC and SOCK_NONBLOCK supportVladimir Zapolskiy2010-06-011-1/+11
| | | | | | | | This patch adds support for SOCK_CLOEXEC and SOCK_NONBLOCK socket descriptor flags, which are introduced since Linux 2.6.27 Signed-off-by: Vladimir Zapolskiy <vzapolskiy@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* powerpc: Add TLS and NPTL supportKhem Raj2010-05-091-0/+3
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* fix a few build errors for the no threads caseAustin Foxley2010-04-281-0/+1
| | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* enable building __fcntl_nocancel, as it used unconditionally nowAustin Foxley2010-04-251-2/+0
| | | | | | also sync up not-cancel.h headers between all three thread libraries Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* nptl: fix libc internal, dynamically enabled lockingTimo Teräs2010-04-221-12/+5
| | | | | | | | | | | | | | | | | | | | | 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>
* nptl: remove unneeded libc-lock.h includeTimo Teräs2010-04-201-1/+0
| | | | | | | | | | | | | | | | | | | | | | 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>
* libc: remove libc weak __pthreads_* wrappersTimo Teras2010-04-162-8/+21
| | | | | | | | | | | | | | | | | 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>
* nptl: fix libc sigtimedwaitTimo Teräs2010-04-151-2/+3
| | | | | | | | | | | | | | | | | | 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>
* poll.c: fix incorrect mergeAustin Foxley2010-04-021-3/+1
| | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* Merge commit 'origin/master' into nptlAustin Foxley2010-04-025-6/+15
|\ | | | | | | | | | | | | | | | | | | | | | | 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>
| * prettify make cleanBernhard Reutner-Fischer2010-03-251-2/+2
| | | | | | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
| * pull kernel-features.h from NPTLBernhard Reutner-Fischer2010-03-051-18/+392
| | | | | | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
| * poll: unavailable on linux < 2.2.0Bernhard Reutner-Fischer2010-03-042-1/+7
| | | | | | | | | | | | fixes bug #253 Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
| * libc: Add a common sysdep headerCarmelo Amoroso2010-02-101-0/+139
| | | | | | | | | | | | | | | | | | | | Add a common header file to provide macros useful in asm code: C_LABEL to construct the asm name for a C symbol cfi_xxx to generate eh_frame unwind information. Ported from NPTL branch. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
| * getdents: Fix mips64 buildAtsushi Nemoto2010-02-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Wed, 27 Jan 2010 07:14:08 +0100, Carmelo AMOROSO <carmelo.amoroso@st.com> wrote: > I would re-write your patch in a simpler way. > > We already have the following > > 136 #if defined __UCLIBC_HAS_LFS__ && ! defined __NR_getdents64 > 137 attribute_hidden strong_alias(__getdents,__getdents64) > 138 #endif > > I think that it's simpler to move in the proper place this statement. Thanks, indeed. If we came into "#elif WORDSIZE == 32" block, above condition never be true. So we can just move this statement out of "#if...#elif...#elif...#endif" block. Here is a revised patch. ------------------------------------------------------ From: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Subject: [PATCH] getdents: Fix mips64 build Some archs (such as mips64) do not have getdents64 syscall but have getdents syscall. Define alias for it. This fixes regression from 0.9.30.1. Backgrounds: This is once done by commit e8b1c674. But after the commit 33bcf733 ("Use getdents syscall if kernel provide supports for this instead of relying upon getdents64."), if __ASSUME_GETDENTS32_D_TYPE was defined the alias for getdents64 is not defined. The macro __ASSUME_GETDENTS32_D_TYPE had been effectively ignored until 0.9.30.1 but the commit 0f0f20ab ("Move kernel-features.h header from the linuxthread directory to a common one...") really enables it. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | add dwarf defines used in cfi statementsAustin Foxley2010-02-191-0/+19
| | | | | | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>