summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-11-16fix comment typosMike Frysinger
2006-11-16add a test for making sure vfork/signals are handled properly across ↵Mike Frysinger
different setjmp/longjmps
2006-11-16exercise the signal related jump codeMike Frysinger
2006-11-16make default output silence and have the exit status indicate errorMike Frysinger
2006-11-16revert rev 16527 changes to ldso/ldso/dl-hash.cEric Andersen
2006-11-16Paul Brook writes:Eric Andersen
The patch below fixes a bug in the new ARM _ld_linux_resolve implementation. I'm don't know if/how the current implementation was tested, but it's completely broken. This patch makes the prologue and epilogue agree on how big the stack frame is, and also makes sure EABI doubleword stack alignment is preserved. Tested on arm-linux-gnueabi.
2006-11-10This change reimplements the ARM _dl_linux_resolve entry point - this isEric Andersen
called to resolve DLL PLT entries. The assembler is changed to be thumb compatible and slightly faster, the C function, _dl_linux_resolver (note the extra r) is changed to take a byte address in place of an 8 byte count (faster in caller and callee, and slightly easier to understand).
2006-11-10arm thumb:Eric Andersen
Put the call_via_rx code into each executable - call_via_ip cannot possibly work if called through the PLT! ldso requires this code too as it is not linked with the crt stuff and thumb ldso does make calls via a register. The patch puts the code into crti.S so that it is linked into every normally built application (if thumb or interworking is selected). This is only 30 extra bytes and it works - the previous code did not because nothing both implemented and exported the APIs (they were in libgcc, but not in the version script). crti.S and crtn.S is also brought up to date with GCC 3.4.4 - this is essential for thumb support because the .init and .fini sections must use arm or thumb code to match the compilation of the libraries. Note that code which pushes stuff into .init or .fini must be compiled with or without -mthumb to match the uclibc compilation - and gcc itself (which does do this) must therefore be compiled to match.
2006-11-09prevent cancellation functions from being called more than onceMike Frysinger
2006-11-09backport from upstream:Mike Frysinger
2001-04-10 Ulrich Drepper <drepper@redhat.com> * join.c (pthread_exit): Move code to new function __pthread_do_exit which takes an extra parameter with the current frame pointer. Call new function with CURRENT_STACK_FRAME. (__pthread_do_exit): New function. Call __pthread_perform_cleanup with the new parameter. (pthread_join): Call __pthread_do_exit instead of pthread_exit. * cancel.c (__pthread_perform_cleanup): Takes extra parameter. Use this parameter as the initial value the cleanup handler records are compared against. No active cleanup handler record must have an address lower than the previous one and the initial record must be above (below on PA) the frame address passed in. (pthread_setcancelstate): Call __pthread_do_exit instead of pthread_exit. (pthread_setcanceltype): Likewise. (pthread_testcancel): Likewise. (_pthread_cleanup_pop_restore): Likewise. * condvar.c (pthread_cond_wait): Likewise. (pthread_cond_timedwait_relative): Likewise. * manager.c (pthread_start_thread): Likewise. * oldsemaphore.c (__old_sem_wait): Likewise. * pthread.c (pthread_handle_sigcancel): Likewise. * semaphore.c (__new_sem_wait): Likewise. (sem_timedwait): Likewise. * ptlongjmp.c (pthread_cleanup_upto): Also use current stack frame to limit the cleanup handlers which get run. * internals.h: Add prototype for __pthread_do_exit. Adjust prototype for __pthread_perform_cleanup.
2006-11-09backport from upstream:Mike Frysinger
2001-04-11 Ulrich Drepper <drepper@redhat.com> * cancel.c (_pthread_cleanup_push): Catch invalid __prev buffer and remove it. (_pthread_cleanup_push_defer): Likewise.
2006-11-07I failed to check the patch adding support for the new (stupid) US 2007Eric Andersen
daylight savings time rules when xlocale was enabled. Fix compile error.
2006-11-06mips64 patch from Atsushi Nemoto:Eric Andersen
We should not use old stype ipc_perm for 64-bit mips kernel. I suppose other 64-bit platforms shoule define __IPC_64 also and we can define it unconditionally, but not sure for other archs ...
2006-11-06mips64 patch from Atsushi Nemoto:Eric Andersen
We should use "PTR_LA" instead of "la" for N64 ABI.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
Add selection of 3 ABI. CPU_CFLAGS is needed to generate correct sysnum.h. Fix test/Rules.mak.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
64bit MIPS ELF format tweaks. (from glibc) Elf32/ElfW convertions. asm code adjustments.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
No pread64, pwrite64 syscall for N64 ABI. Make __libc_pread and __libc_pread64 use same syscall.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
Adjust for mips64 kernel.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
miscellaneous asm routines
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
The mips64 N32/N64 ABI have a bit different register usage convention. Also the register size for these ABI is 8 byte. Use ld/sd for them.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
The mips64 N32/N64 ABI can pass much arguments via registers.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
Import mips64 version of memset, memcpy from glibc.
2006-11-04mips64 patch from Atsushi NemotoEric Andersen
This is a bit twisted dirent.h can be used for both getdirent and getdirent64 case on mips/mips64.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
The kernel include/asm-mips/posix_types.h defines __kernel_ino_t as unsigned long.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
The predefined _MIPS_SZPTR (32 for O32 or N32, 64 for N64) can be used for WORDSIZE. This is came from glibc code.
2006-11-04mips64 patch from Atsushi Nemoto:Eric Andersen
It seems these codes dropped when importing from glibc. This is required for mips64.
2006-11-04based on a patch from Atsushi Nemoto:Eric Andersen
There is a mismatch of struct msghdr between the kernel and libc. In a 64-bit environment, the size of msg_namelen is 4 for all, but the size of msg_iovlen and msg_controllen is 8 bytes for the kernel and for glibc, but 4 bytes for uClibc. Fix size for the 64bit case.
2006-11-03remove duplicated/unused ASSERT codeMike Frysinger
2006-11-03dont need to force optimization in CFLAGS anymore (if this fails your ↵Mike Frysinger
compiler prob sucks anyways)
2006-11-02In bug 622, JohnAta writes:Eric Andersen
In 2005, Congress passed a law so that in 2007, the second week of March starts DST. Previously, it was the first week of April. The uclibc time library routines apparently have not been updated to reflect this new processing. Using the current version of uclibc, on March 11, 2007 the reported time will be incorrect.
2006-10-26some updates noting things that should be doneEric Andersen
2006-10-23Merge SH-2 trapa fixups from Mark.Paul Mundt
2006-10-16 Mark Shinwell <shinwell@codesourcery.com> * libc/sysdeps/linux/sh/vfork.S: Use __SH_SYSCALL_TRAP_BASE. Also use __CONFIG_SH2__ rather than __sh2__, for consistency. * libc/sysdeps/linux/sh/syscall.c: Use __SH_SYSCALL_TRAP_BASE. * libc/sysdeps/linux/sh/bits/uClibc_arch_features.h: Use __CONFIG_SH2__ rather than __sh2__, for consistency. * libc/sysdeps/linux/sh/bits/syscalls.h (__SH_SYSCALL_TRAP_BASE): New. Use instead of hard-coded trap numbers in the various __NR_<name> macros. * libc/sysdeps/linux/sh/clone.S: Use __SH_SYSCALL_TRAP_BASE. Also use __CONFIG_SH2__ rather than __sh2__, for consistency. * libc/sysdeps/linux/sh/crti.S: Disable GOT-related code if __HAVE_SHARED__ is not set. * libc/sysdeps/linux/sh/pipe.c (pipe): Use __SH_SYSCALL_TRAP_BASE.
2006-10-22dont require DOPIC with FORCE_SHAREABLE_TEXT_SEGMENTSMike Frysinger
2006-10-19Joseph S. Myers writes:Eric Andersen
There are many directories called "CVS" checked into uClibc SVN, probably as a side-effect of importing a CVS checkout. I don't think these are particularly useful to have checked in.
2006-10-19Make strdup() use memcpy() rather than strcpy() to duplicate the string. Peter Kjellerstedt
The rationale is that we already have the length of the string to duplicate (from doing the malloc()), and memcpy() should then always be faster than strcpy() (or at least as fast).
2006-10-10Make _dl_linux_resolve interworking safe. Thanks Paul BrookKhem Raj
2006-10-07Add the mmap.c missed out in the last commit.Khem Raj
2006-10-07Add config options to select ARM ARMv5 and Intel iwmmxt variants.Khem Raj
2006-10-07Add mmap function needed for ARM EABI and define thumb specific ↵Khem Raj
INTERNAL_SYSCALL macro which saves r7 before making the call and pops it back after return.
2006-10-07Sergey Lapin says the undefined syscall numbers from unistd.h do not get ↵Khem Raj
propogated into generated sysnum.h.
2006-10-07fixup from Bernd Schmidt to properly document DL_ADDR_TO_FUNC_PTRMike Frysinger
2006-10-07Bernd Schmidt writes:Mike Frysinger
This introduces a new SEND_EARLY_STDERR macro that is to be used in dl-startup.c before ld.so is relocated. It is needed on Blackfin (and frv) FDPIC since we have to use special tricks to get the address of a string constant. EARLY_STDERR_SPECIAL gets defined on such a machine and prevents printing of debug strings inside the loop that relocates ld.so, since we can't decide which of the two variants to use.
2006-10-07Don't use r10 to find PIC base. In GCC 4.1.1 onwards ARM PIC handling uses ↵Khem Raj
pseudo register for PIC base so load and relocate it.
2006-10-07the makefile will include elf.h for us #778Mike Frysinger
2006-09-28implement support for the rest of the 32bit uid syscallsMike Frysinger
2006-09-25Do not include tls.h unless __UCLIBC_HAS_THREADS__ is defined.Peter Kjellerstedt
2006-09-23fix return casts for a bunch of functionsMike Frysinger
2006-09-23grab s_lrint from glibc for C99Mike Frysinger
2006-09-23only include _lfs_64.h when __UCLIBC_HAS_LFS__ is defined as pointed out by ↵Mike Frysinger
Miguel Ángel
2006-09-22Added support for sysconf(_SC_MONOTONIC_CLOCK).Peter Kjellerstedt