Age | Commit message (Collapse) | Author |
|
malloc-simple allocator
Two things are fixed by this commit:
1/ It is wrong to allocate an object of size > PTRDIFF_MAX.
It is explained in this thread: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63303
2/ There was a possible integer overflow in both malloc() and memalign() implementations
of stdlib/malloc-simple.
The malloc() integer overflow issue is fixed by the side effect of fixing the PTRDIFF_MAX issue.
The memalign() one is fixed by adding a comparison.
Signed-off-by: Yann Sionneau <yann@sionneau.net>
|
|
This option is enabled for a long time and I see no
useful case where we should be incompatible to glibc here.
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
valloc uses memalign
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
The name was changed to include a trailing 'D' when it went into the
kernel.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
move __libc_free_aligned prototype up to a common place.
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
The 0.9.31 release included a change to malloc-simple to request
uninitialized memory from noMMU kernels. Unfortunately, the corresponding
calloc() code assumed that memory returned by malloc() was already zeroed,
which leads to all kinds of nastiness.
Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.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>
|
|
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>
|
|
Appears to build fine (several .configs tried)
|
|
|
|
|
|
Thank you Chase Douglas for reporting it and for the patch.
|
|
remove a few duplicate includes of unistd.h
|
|
in string.h and strings.h. This caught unguarded string ops in
libc/inet/ethers.c __ether_line_w() function.
I will wait for fallout reports for a week or so,
then continue converting more libc_hidden_proto's.
|
|
trigger a buffer overflow in that case
|
|
|
|
things, and avoid potential deadlocks caused when a thread holding a uClibc
internal lock get canceled and terminates without releasing the lock. This
change also provides a single place, bits/uClibc_mutex.h, for thread libraries
to modify to change all instances of internal locking.
|
|
|
|
|
|
is a useless attempt
|
|
missing headers, other jump relocs removed
|
|
|
|
|
|
|
|
|
|
|
|
Dont forgive that length of munmap is "0" in current nommu.
This purpose cannot free memory area really.
It is a patch to work out a solution.
|
|
Only use MAP_SHARED when mmu-less.
|
|
|
|
Fix uninitialized pthread mutex used to lock the list of aligned
memory blocks.
|
|
Lea. It is about 2x faster than the old malloc-930716, and behave itself much
better -- it will properly release memory back to the system, and it uses a
combination of brk() for small allocations and mmap() for larger allocations.
-Erik
|
|
simple and releases memory immediately when asked to do so.
-Erik
|
|
smarter than the old "malloc-simple", and actually works, unlike
the old "malloc". So kill the old "malloc-simple" and the old
"malloc" and replace them with Miles' new malloc implementation.
Update Config files to match. Thanks Miles!
|
|
|
|
|
|
|
|
on my patch.
|
|
when folks do a malloc(0) using malloc-simple.
-Erik
|
|
defining things to "0" in the disabled case to outright undefining them, lest
code that does an "#ifdef FOO" get inadvertantly triggered. Remove now
unneeded lines from Rules.mak which makes the command line smaller and avoids
redundancy (since this stuff is now pulled in via features.h).
-Erik
|
|
|
|
Also fixes 2 very important malloc bugs! Anyone using malloc (esp mmu-less)
should update and recompile.
-Erik
|
|
|
|
|