Age | Commit message (Collapse) | Author |
|
as documented in the function api
|
|
On an i386 platform with no rt_sigsuspend syscall (ie: Linux 2.0), compilation will halt on libc/sysdeps/linux/common/sigsuspend.os with a cryptic error message:
"Error: non-constant expression in ".if" statement"
I've investigated and found that the cause is that a literal '0' is being passed into a block of complex assembler macrology that is only prepared to deal with register names - '%eax', etc.
In turn, that seems to be because of a typo in the GCC register constraints. The constraints for 2 and 3-argument syscalls includes a "C" constraint. To gcc, "C" means an SSE floating point constant -- an unlikely element in a syscall. I suspect the author meant to type "S" (%esi).
|
|
getcwd syscall has an off-by-one allocation bug. As a result, sometimes the returned string has garbage at the end.
|
|
|
|
on their own local copies while static linking dont hit link failures when other uClibc code force the libc.a objects to be pulled in via the hidden alias symbols
|
|
|
|
infinite loops when it generates builtins+trunc() substitutes
|
|
after having added memset.
Thanks to Peter Mazinger for pointing this out.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
sa_restorer when SA_ONSTACK is set, but it seems to break LTP's
sigaltstack testcase. Some users have reported problems with
sigaltstack as well; hopefully this will fix it.
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
|
|
initialization of the mutex field within DIR struct.
When linked dynamically instead, __pthread_mutex_init will
initialize the mutex itself. Without this fix, any call to
readdir will stuck forever trying to acquire the mutex.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
These are mostly the changes necessary to deal with loading the libraries
into memory. A couple new target macros are defined for this purpose, and
the code in dl-elf.c is modified to deal with nommu systems.
|
|
|
|
A couple more target macros for ld.so to deal with FD-PIC support. We need
special code to compute the initial got and dpnt, and we need to pass extra
arguments to _dl_get_ready_to_run.
|
|
Add a hash table for function descriptors on FD-PIC targets.
|
|
Change _dl_find_hash to _dl_lookup_hash, as on the NPTL branch.
_dl_find_hash is now a wrapper function around it; unlike on the NPTL branch,
it retains the old interface so that not all callers need to be changed.
_dl_lookup_hash can optionally give its caller a pointer to the module where
the symbol was found.
Introduce ELF_RTYPE_CLASS_DLSYM for lookups from libdl.
Spelling fixes in the Blackfin port, since Alex Oliva's original version of
these patches used _dl_find_hash_mod as the name of the function rather than
_dl_lookup_hash.
|
|
Add the necessary changes in ld.so and libdl to deal with targets that
prepend an underscore to symbol names.
|
|
Add a new function _dl_free. In _dl_malloc, ensure we always get back a full
page from mmap.
Reset _dl_malloc_function and _dl_free_function when libdl is initialized.
|
|
system calls actually being inlined, so AVR32 needs to use
__always_inline instead of just inline. The attached patch changes this
for the system calls.
Signed-off-by: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
|
|
reduction is achieved by direct use of user-supplied PATH_MAX sized
buffer for result (without intermediate copy) and changes
in copy_buf[] usage - now it is used for both "source" pathname
and link name (it works because they have to be less than PATH_MAX combined,
otherwise we return NULL).
|
|
|
|
|
|
|
|
Fix minor errors:
- UCLIBC_SHARED_FLAT_ID instead of SHARED_FLAT_ID
- use -Wl,-shared-lib-id properly
Use libc_so.a as the source for the shared libc, in order to be able to
use -mleaf-id-shared-library on the Blackfin.
|
|
|
|
present in our recent kernels.
|
|
|
|
__bswap_16 could not assume that it's zero extended when an unsigned short int is loaded into the data register.
|
|
|
|
is not enabled, otherwise build will fail
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
create these for deleted entries in .eh_frame.
|
|
|
|
undefined structure. This typedef is used in linuxthreads.old-db, causing a
compilation failure. Fixed by defining an empty structure for it - we don't
have fp regs anyway.
|
|
if !HAVE_SHARED.
|
|
that all entries in the __pthread_functions point to functions within
libpthread, not identically-named functions in libc.
|
|
|
|
common directory where SHMLBA = __getpagesize()
This patch fixes the issue.
Khem Raj
MontaVista Software Inc.
|
|
containing an object built without -fpic/-fPIC - then:
* If __FORCE_SHAREABLE_TEXT_SEGMENTS__, then it gives an error "Can't
modify %s's text section. Use GCC option -fPIC for shared objects,
please.\n" and exits.
* Otherwise, it makes the library's pages writable and relocates it.
If it encounters text relocations in a position-independent executable -
one containing an object built without -fpie/-fPIE/-fpic/-fPIC - then:
* If __FORCE_SHAREABLE_TEXT_SEGMENTS__, it does nothing about making the
pages writable, leading to a crash.
* Otherwise, the loop to make the pages writable uses the same variable
ppnt as used in an outer loop, messing up that outer loop and also causing
a crash.
This patch fixes both cases, by giving an error if
__FORCE_SHAREABLE_TEXT_SEGMENTS__ and saving and restoring ppnt otherwise.
Tested in both cases on ARM EABI.
Joseph S. Myers
joseph@codesourcery.com
|
|
<hcegtvedt@atmel.com>
|
|
|
|
fprintf is considered failing if the return is less than 0
|
|
|
|
Mazinger
|
|
|
|
|
|
On cygwin one has to pass
make menuconfig HOST_LOADLIBES="-lcurses -lintl"
otherwise just curses is linked in and some symbols that live in intl are
unresolved. Closes #1554 and possibly a couple of other reports.
|
|
Jean-Christian de Rivaz writes:
The attached patch solve an issue I faced while using the libdbus-glib
waiting for a D-Bus message or the end of a glib timer at the same time.
This specific case of use generate a poll call with a zero timeout. On
platformes with the glibc a zero timeout poll return immetiately even if
there is no file descriptor event. But on platformes with uClibc a zero
timeout poll block until a file descriptor event occurs.
|
|
will set the type of common symbols to STT_COMMON
instead of STT_OBJECTS, so the dynamic linker needs
to handle this type os symbols too.
Same changes have been added to glibc (See: bugzilla #5104).
This patch ensures the uclibc will work with later bintuils.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
|
|
|
|
- adjust setting flags accordingly to use (hardcoded, see below) -Wl,
Potential improvements:
*) --warn-unresolved-symbols should perhaps be used for all libs
*) eventually rename LDFLAGS to CC_LDFLAGS
*) probe for compiler driver's notion of flag to use for passing in
linker flags (i.e. don't hardcode "-Wl,")
|