|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| 
| 
| | Update malloc library to use internal uclibc locking primitives
to get the libpthread calls correct.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| |\  
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | 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> | 
| | | 
| | 
| | 
| | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 
| | | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | l64a was returning the pointer to the end of the internal
buffer instead of the start. This caused an infinite loop
in passwd application.
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com> | 
| | | 
| | 
| | 
| | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | l64a was returning the pointer to the end of the internal
buffer instead of the start. This caused an infinite loop
in passwd application.
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com> | 
| | | 
| | 
| | 
| | | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 
| |\| 
| | 
| | 
| | 
| | 
| | 
| | | Conflicts:
	libc/stdlib/Makefile.in
Signed-off-by: Khem Raj <raj.khem@gmail.com> | 
| | | 
| | 
| | 
| | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 
| |\| 
| | 
| | 
| | 
| | 
| | 
| | 
| | | Conflicts:
	libc/signal/sigpause.c
	libc/string/x86_64/memset.S
Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | Fixes multiple race conditions on mmb list. This was done by
making the mmb_heap_lock into a recursive lock and making the
regular heap_lock extend to cover the mmb heap handling.
Also move the new_mmb allocation up to before the mmb list is
iterated through to find the insertion point. When the mmb_heap
also runs out and needs to be extended when the regular heap is
just extended, the mmb list could be messed up.
Signed-off-by: Freeman Wang <xwang@ubicom.com>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| |\| 
| | 
| | 
| | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | Now that the kernel supports MAP_UNINITIALIZE, have the malloc places use
it to get real uninitialized memory on no-mmu systems.  This avoids a lot
of normally useless overhead involved in zeroing out all of the memory
(sometimes multiple times).
Signed-off-by: Mike Frysinger <vapier@gentoo.org> | 
| |\| 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | Conflicts:
	Rules.mak
	libc/misc/sysvipc/msgq.c
	test/Rules.mak
Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | | 
| | 
| | 
| | 
| | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 
| | | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | 
| | | sem_open(3) needs to create a temporary file in a way which can't
be efficiently implemented in terms of POSIX API. Extend
__gen_tempname with mode_t mode argument in order to ease
sem_open implementation.
Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | | 
| | 
| | 
| | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | | 
| | 
| | 
| | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| |/  
|   
|   
|   
|   
|   
|   
|   
|   
| | * updated kernel-features.h
 * system is provided by pt-system with nptl
 * _exit should do exit_group with nptl
 * tsd tls ptr in libc
 * rt_sigwaitinfo impl added
Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | 
| 
| 
| | Signed-off-by: Austin Foxley <austinf@cetoncorp.com> | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | The malloc() code checks the incoming size to make sure the header
adjustment doesn't cause overflow in the size storage.  Add the same
check to realloc() to catch stupid stuff like realloc(..., -1).
Reported-by: James Coleman <james.coleman@ubicom.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org> | 
| | 
| 
| 
| | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> | 
| | 
| 
| 
| | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> | 
| | 
| 
| 
| 
| 
| 
| 
| | sed -i -e '/Experimentally off - /d' $(grep -rl "Experimentally off - " *)
  sed -i -e '/^\/\*[[:space:]]*libc_hidden_proto(/d' $(grep -rl "libc_hidden_proto" *)
  should be a nop
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 
| | 
| 
| 
| 
| 
| | Handle O=
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 
| | 
| 
| 
| 
| 
| 
| 
| | The strtouq alias was only available on 32bit, breaking compilation of stuff
using strtouq on 64bit machines. At the same time use the correct return
type (u_quad_t).
Signed-of-by: Peter Korsgaard <jacmet@sunsite.dk> | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | is always equivalent to __UCLIBC_CURLOCALE->x.
  remove typedef __uclibc_locale_t, it used only in a few places,
  it is lees confusing to use struct __uclibc_locale_struct
  everywhere.
xlocale.h: hide __global_locale back under _LIBC,
  bug 53 is wrong in claiming it should be exported.
  Also hide under _LIBC:
  extern __locale_t __curlocale_var;
  extern __locale_t __curlocale(void);
  extern __locale_t __curlocale_set(__locale_t newloc);
  # define __UCLIBC_CURLOCALE
  # define __XL_NPP(N)
  # define __LOCALE_PARAM
  # define __LOCALE_ARG
  # define __LOCALE_PTR | 
| | |  | 
| | 
| 
| 
| | - SUSv4_LEGACY part #1 (non-networking) | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | remove __tolower and __toupper (they existed only in SOME configs!);
 remove usages of _tolower (some of them clearly buggy) from uclibc code;
 add a few more -U<define> options to unifdef pass over installed headers;
 document it on docs/wchar_and_locale.txt
    text           data     bss     dec     hex filename
- 514963           2727   15396  533086   8225e lib/libuClibc-0.9.30-svn.so
+ 514888           2727   15396  533011   82213 lib/libuClibc-0.9.30-svn.so | 
| | 
| 
| 
| 
| 
| 
| | text           data     bss     dec     hex filename
-    546              0       4     550     226 libc/stdlib/setenv.o
+    538              0       4     542     21e libc/stdlib/setenv.o | 
| | 
| 
| 
| 
| 
| 
| | text           data     bss     dec     hex filename
-    672              0       4     676     2a4 libc/stdlib/setenv.o
+    546              0       4     550     226 libc/stdlib/setenv.o | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | add a few missing ENOMEMs, some code shrinking
    text           data     bss     dec     hex filename
-    727              0       4     731     2db libc/stdlib/setenv.o
+    672              0       4     676     2a4 libc/stdlib/setenv.o | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | *: remove checks of sigaction and sigprocmask results
 in cases where they clearly can't fail:
 sigaction(known_good_sig)
 sigprocmask(known_good_how)
    text           data     bss     dec     hex filename
-    393              4       0     397     18d libc/pwd_grp/lckpwdf.o
+    382              4       0     386     182 libc/pwd_grp/lckpwdf.o
-     56              0       0      56      38 libc/signal/sigblock.o
+     44              0       0      44      2c libc/signal/sigblock.o
-    211              0       0     211      d3 libc/signal/sigset.o
+    202              0       0     202      ca libc/signal/sigset.o
-     56              0       0      56      38 libc/signal/sigsetmask.o
+     44              0       0      44      2c libc/signal/sigsetmask.o
-    309              0       0     309     135 libc/unistd/sleep.o
+    256              0       0     256     100 libc/unistd/sleep.o | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | text           data     bss     dec     hex filename
-    130            156       0     286     11e libc/stdlib/random.o
+    130            148       0     278     116 libc/stdlib/random.o
-    586              0       0     586     24a libc/stdlib/random_r.o
+    570              0       0     570     23a libc/stdlib/random_r.o | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | gcc?
    text           data     bss     dec     hex filename
-  38015          18096    8636   64747    fceb lib/libpthread-0.9.30-svn.so
+  38001          18096    8636   64733    fcdd lib/libpthread-0.9.30-svn.so
- 274842           1835   19012  295689   48309 lib/libuClibc-0.9.30-svn.so
+ 274779           1835   19012  295626   482ca lib/libuClibc-0.9.30-svn.so | 
| | |  | 
| | 
| 
| 
| | The sbrk lock is only needed for LT.old | 
| | |  | 
| | 
| 
| 
| 
| | Appears to build fine (several .configs tried) | 
| | |  | 
| | |  | 
| | |  | 
| | 
| 
| 
| | Closes #6024 | 
| | |  | 
| | |  | 
| | 
| 
| 
| | found it, this is Bernhard's patch to fix it.  Tested and it Works For Me (tm)). | 
| | |  |