summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux
AgeCommit message (Collapse)Author
2009-07-23Blackfin: fix incorrect attribute orderMike Frysinger
The order of attributes in a function definition matters and in a few places in the Blackfin code, it was being applied to the return type instead of the function itself. In file included from ldso/ldso/ldso.c:43: ldso/ldso/bfin/elfinterp.c: At top level: ldso/ldso/bfin/elfinterp.c:42: warning: '__visibility__' attribute ignored on non-class types In file included from ldso/ldso/bfin/elfinterp.c:341, from ldso/ldso/ldso.c:43: libc/sysdeps/linux/bfin/crtreloc.c: At top level: libc/sysdeps/linux/bfin/crtreloc.c:91: warning: 'visibility' attribute ignored on non-class types Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-23create real common vfork() functionMike Frysinger
Rather than force people to always implement their own vfork(), have the default implementation be sane. For now, only the Blackfin port uses the new code. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-22Blackfin: no need to load P5 for shared FLATJie Zhang
The register is already loaded for us upon entry by the kernel. Signed-off-by: Jie Zhang <jie.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-22Blackfin: fix generation of Scrt1.o for FDPICJie Zhang
Signed-off-by: Jie Zhang <jie.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-22Blackfin: unify FDPIC/FLAT versions of cloneMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-22add hidden aliases for openat funcsMike Frysinger
openat64() uses openat(), so we need hidden aliases for it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-21byteswap: unify common definitionsMike Frysinger
The majority of the byteswap functions are the same across all arches, so setup a common header to provide definitions if they don't exist. This allows arches to override only the ones they actually want to implement with inline assembly. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-21s/UCLIBC_INTERNAL/_LIBC/gDenys Vlasenko
Undo my old mistake. I added UCLIBC_INTERNAL define, but later I realized _LIBC is doing exactly the same thing. This change converts all usages of UCLIBC_INTERNAL to _LIBC, removing all instances of UCLIBC_INTERNAL. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-20It fixes the following warnings seen on mips build.Khem Raj
libc/sysdeps/linux/mips/clone.S: Assembler messages: libc/sysdeps/linux/mips/clone.S:122: Warning: No .frame pseudo-op used in PIC code libc/sysdeps/linux/mips/clone.S:75: Warning: Pretending global symbol used as branch target is local. libc/sysdeps/linux/mips/crt1.S: Assembler messages: libc/sysdeps/linux/mips/crt1.S:134: Warning: No .cprestore pseudo-op used in PIC code Signed-off-by: Khem Raj <raj.khem@gmail.com>
2009-07-20avr32/microblaze/vax: punt local byteswap.hMike Frysinger
These arches are generic C implementations of the byteswap functions, so rather than keep a useless local copy, use the common C one. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20syscall: convert cris/hppa to common syscallsMike Frysinger
The cris/hppa code appears to be easy to convert, so go ahead and do it for them. Build tested only. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20some ports define ENOTSUPMike Frysinger
A port or two (like hppa) does define ENOTSUP, so don't assume that everyone needs this fallback define. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20INLINE_SYSCALL_NCS: scope out local vars to avoid conflictsMike Frysinger
The INLINE_SYSCALL_NCS() macro was using "res" and "err" as local variable names, but this caused conflicts with some code (like clock_getres) whose arguments were named the same. libc/sysdeps/linux/common/clock_getres.c: In function 'clock_getres': libc/sysdeps/linux/common/clock_getres.c:15: warning: 'res' is used uninitialized in this function Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20alpha: fix building with no asm/elf.hMike Frysinger
The latest sanitized linux kernel headers no longer export asm/elf.h, so do not rely on it anymore. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20fdatasync: handle latest alpha syscallsMike Frysinger
The latest alpha Linux kernel defines __NR_fdatasync like everyone else and deprecates the older __NR_osf_fdatasync, so support that setup. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20alpha/sigprocmask: fix implicit memset() prototypeMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20first pass at implementing *at funcsMike Frysinger
Tested basic functionality with coreutils and things seem to work. At least gives us a basis to jump from. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20mknod: convert to INLINE_SYSCALL() to sync with glibcMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20fix typo in frv endian commentMike Frysinger
Reported-by: Denys Vlasenko <vda.linux@googlemail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20ppoll: switch to INLINE_SYSCALL() to match glibcMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-14Fix ARM syscall argument loading.Joseph Myers
This patch is a uClibc equivalent of <http://sourceware.org/ml/libc-ports/2008-11/msg00006.html>, to compute all syscall arguments on ARM in temporary variables before loading them into register variables. The principle is as for that glibc patch; the problem I actually observed was a GCC internal compiler error building ld.so for Thumb-2. Signed-off-by: Joseph Myers <joseph@codesourcery.com>
2009-07-09syscall(): create a common version based on INLINE_SYSCALL_NCS()Mike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-09syscall: unify part 2: NCS varietyMike Frysinger
Declare common NCS (non-constant syscall) variants and convert the existing ports over to this. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-09sh: Change __HAVE_SHARED__ to __PIC__Peter Griffin
Generate PIC relocations when __PIC__ is defined rather than __HAVE_SHARED__ (like other architectures). Signed-off-by: Peter Griffin <pgriffin@mpc-data.co.uk> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2009-07-08drop missing {INLINE,INTERNAL}_SYSCALL fallback logicMike Frysinger
Ports missing INLINE_SYSCALL() support need to get fixed, so drop the cruft keeping them alive since it no longer works with the unification. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-08syscall: unify common syscall definesMike Frysinger
Unify all the common syscall defines in syscalls-common.h and scrub all the duplicated code from relevant ports. This should also make converting existing ports to INLINE_SYSCALL() much easier as they don't have to get lost in all the unrelated noise, as well as creating new ports. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-06sparc: Update syscalls.h to define INTERNAL_SYSCALLAustin Foxley
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
2009-07-05Avoid warnings about shifting more bits than we haveRon
The test here is a constant expression and will compile out. For platforms that don't need the shift the code gets slightly smaller and simpler, for those that do the result is unchanged. Signed-off-by: Ron Lee <ron@debian.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-05Provide token prototypes for functions that are external but have no headerRon
This cuts down on a lot of noise from gcc-4.4 Signed-off-by: Ron Lee <ron@debian.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-03i386: store errno value before using __set_errno()Ingo van Lil
The __syscall_error() function stores the errno value in the edx register before invoking the __set_errno() macro. When using the pthread library this macro calls thread_self() to determine the errno location, which might clobber the edx register. The errno value must be stored in a "real" variable so the compiler can take care of saving/restoring it if necessary. Signed-off-by: Ingo van Lil <inguin@gmx.de> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-03uClibc_arch_features: sync defines between portsMike Frysinger
Make sure each arch has the same complete list to make comparing between them easier. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-02sh: add cacheflush syscall wrapperCarmelo Amoroso
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2009-06-30Fix Thumb-2 setjmp.Joseph Myers
Many Thumb-2 instructions cannot use sp or pc as operands, and the assembler now diagnoses these. setjmp had one such instruction, movs; this patch changes it to mov. Signed-off-by: Joseph Myers <joseph@codesourcery.com>
2009-06-28Add missing CLIBABI variables __aeabi_stdin, __aeabi_stdout, __aeabi_stderr.Joseph Myers
The ARM EABI has a document CLIBABI specifying various __aeabi_* functions and variables to be provided for the use of portable objects that can be linked with different EABI-conforming C libraries. __aeabi_stdin, __aeabi_stdout and __aeabi_stderr were missing in uClibc; this patch (originally from Nathan Froyd and for glibc) adds them. Signed-off-by: Joseph Myers <joseph@codesourcery.com>
2009-05-27waitid: linux ABI takes 5 args, not 4Mike Frysinger
The POSIX waitid() takes 4 args, but the Linux one takes 5 args, so make sure we stuff the 5th arg with a NULL. Otherwise garbage gets randomly passed up and considering this is a pointer, that's baaaad. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-05-26Add working pipe implementation for sparcAustin Foxley
Also get rid of warning in sparc sigaction Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
2009-05-20Add a sigaction implementation for sparcAustin Foxley
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
2009-05-05Add position independent code for crt1.S.Carmelo Amoroso
This will generate a Scrt1.o that is linked to executabled when compiled as PIE code (position independent executable) without requiring relocation in .text section (not allowed on uclibc/sh4). Signed-off-by: Peter Griffin <pgriffin@mpc-data.co.uk> Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
2009-03-2732/64 bit sparc got unified in 2.6.29 the way x86/x86_64 did in 2.6.28.Rob Landley
The new guard symbol is "__SPARC_POSIX_TYPES_H".
2009-03-16enable mprotect() regardless of MMU as some systems have MPUs which allows ↵Mike Frysinger
memory protection
2009-03-16import user.h from the kernel as it is no longer exported by the kernelMike Frysinger
2009-03-16Update copyright header.Khem Raj
2009-03-13add GNU extension for select timeouts where the sub-second field is actually ↵Mike Frysinger
longer than one second
2009-03-05Define creat in an independent fileKhem Raj
2009-03-03mknod: widen the parameters to match kernelDenis Vlasenko
ustat: same, + remove superfluous "conversion" which does nothing at best, loses high dev bits at worst i386/bits/kernel_stat.h: update to reflect reality (wider dev_t) h8300/bits/kernel_stat.h: same arm/bits/kernel_stat.h: cosmetics to match kernel header to the letter
2009-03-02Add EPOLLRDHUP constantDenis Vlasenko
2009-02-27fix breakage in x86_64 defconfigDenis Vlasenko
2009-02-25Reinstate __libc_foo's needed for linuxthreads.old.Denis Vlasenko
Now they are only enabled if linuxthreads.old are selected.
2009-02-23Use gcc built-in defines for detecting SH cores instead ofCarmelo Amoroso
uclibc config option macros (aligning SH to all other archs). Changes applied as below: __CONFIG_SH4__ -> __SH4__ __CONFIG_SH2__ -> __sh2__ __CONFIG_SH2A__ -> __SH2A__ Note: pay attention to capital letters Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2009-02-20Fix my previous commit to use preprocessor in the right way !Carmelo Amoroso