Age | Commit message (Collapse) | Author | |
---|---|---|---|
2002-10-09 | * Add support for uClinux's broken munmap, contingent on | Miles Bader | |
__UCLIBC_UCLINUX_BROKEN_MUNMAP__ (which is currently not defined anywhere). This makes other cases a tiny bit less efficient too. * Move the malloc lock into the heap structure (locking is still done at the malloc level though, not by the heap functions). * Initialize the malloc heap to contain a tiny initial static free-area so that programs that only do a very little allocation won't ever call mmap. | |||
2002-09-13 | (__heap_check_failure): New function. | Miles Bader | |
(__heap_check): Add more checks. Use `__heap_check_failure'. | |||
2002-09-09 | (realloc): Record the correct size in the malloc header in the case | Miles Bader | |
where we extended the existing allocation, and got back more than we asked for from the heap. | |||
2002-09-06 | Initial checkin. | Miles Bader | |
2002-09-06 | Update debugging hooks. | Miles Bader | |
2002-09-04 | (free): | Miles Bader | |
Update debug statement. Update to use __heap_delete and __heap_is_empty. | |||
2002-09-04 | (__heap_delete): Renamed from `__heap_unlink_free_area'. | Miles Bader | |
(__heap_free_area_alloc): Use __heap_delete. (__heap_is_empty): New macro. | |||
2002-08-30 | Doc fix. | Miles Bader | |
2002-08-30 | (__heap_free): Tighten up the inner loop, and make the code more readable. | Miles Bader | |
2002-08-30 | Use `likely' & `unlikely' instead of the `__malloc_'-prefixed versions. | Miles Bader | |
2002-08-30 | (likely, unlikely): New macros. | Miles Bader | |
2002-08-30 | (likely, unlikely): New macros. | Miles Bader | |
(__malloc_likely, __malloc_unlikely): Macros removed. | |||
2002-08-19 | (CSRC): Make contents source files, not object files. | Miles Bader | |
2002-08-19 | (CSRC): Add `memalign.c'. | Miles Bader | |
2002-08-19 | Initial checkin. | Miles Bader | |
2002-08-19 | (realloc): Follow new arg conventions of MALLOC_SET_SIZE. | Miles Bader | |
2002-08-19 | (malloc): Use MALLOC_SETUP. | Miles Bader | |
2002-08-19 | (MALLOC_SETUP): New macro. | Miles Bader | |
(MALLOC_SET_SIZE): Take the base-address of the block, not the user-address. (MALLOC_ADDR): Macro removed. | |||
2002-08-14 | Use __malloc_unlikely instead of `likely'. | Miles Bader | |
2002-08-14 | Add flow-control hints with __malloc_likely and __malloc_unlikely. | Miles Bader | |
2002-08-14 | (__malloc_likely, __malloc_unlikely): New macros. | Miles Bader | |
2002-08-14 | Handle zero NEW_SIZE case. | Miles Bader | |
2002-08-13 | Use `return' for null pointers, to avoid a giant block holding the rest | Miles Bader | |
of the function. | |||
2002-08-07 | Per suggestion from Miles Bader, move calloc.c to libc/stdlib. | Eric Andersen | |
Also, Manuel notices that I forgot to check for when nmemb=0, which would result in a segfault, so fix that case as well. -Erik | |||
2002-08-06 | Unify calloc (its the same thing regardless of the underlying | Eric Andersen | |
malloc implementation). Fix problem reported to bugtraq about problems with integer overflow that can occur during the computation of the memory region size by calloc (and similar functions) which could result in a subsequent buffer overflow. -Erik | |||
2002-08-01 | Use MALLOC_REALLOC_MIN_FREE_SIZE. | Miles Bader | |
2002-08-01 | (MALLOC_REALLOC_MIN_FREE_SIZE): New macro. | Miles Bader | |
Enable debugging if MALLOC_DEBUGGING is defined. | |||
2002-08-01 | (HEAP_MIN_SIZE): New macro. | Miles Bader | |
(HEAP_MIN_FREE_AREA_SIZE): Increase size. Enable debugging if HEAP_DEBUGGING is defined. | |||
2002-07-31 | In the allocate-and-copy case, don't include the malloc header in our | Miles Bader | |
size calculations. | |||
2002-07-31 | Update debugging printfs. | Miles Bader | |
2002-07-31 | Account for MALLOC_HEADER_SIZE when calculating new size. | Miles Bader | |
2002-07-31 | Use MALLOC_HEADER_SIZE. | Miles Bader | |
2002-07-31 | (MALLOC_HEADER_SIZE): New macro. | Miles Bader | |
(MALLOC_BASE, MALLOC_ADDR): Use it. | |||
2002-07-30 | Make sure NEW_SIZE is a multiple of HEAP_GRANULARITY. | Miles Bader | |
Calculate amount freed when shrinking correctly. | |||
2002-07-30 | Update the size of grown/shrunk allocations. | Miles Bader | |
MALLOC_SET_SIZE now takes the user-address rather than the base-address. | |||
2002-07-30 | MALLOC_SET_SIZE now takes the user-address rather than the base-address. | Miles Bader | |
2002-07-30 | Define MALLOC_SET_SIZE to take the user-address rather than the base-address. | Miles Bader | |
2002-07-30 | Implement shrinking. | Miles Bader | |
Fix bug when growing an allocation. Use new malloc header macros. | |||
2002-07-30 | Use new malloc header macros. | Miles Bader | |
2002-07-30 | Add macros to abstract the malloc header format a bit. | Miles Bader | |
2002-07-25 | Size tweaks. | Miles Bader | |
2002-07-25 | Miscellaneous tidying-up. | Miles Bader | |
2002-07-25 | Redo the locking, so that it may actually work. Now locking is done at | Miles Bader | |
the malloc/free level, not within the heap abstraction, and there's a separate lock to control sbrk access. Also, get rid of the separate `unmap_free_area' function in free.c, and just put the code in the `free' function directly, which saves a bunch of space (even compared to using an inline function) for some reason. | |||
2002-07-24 | Factor out some common code sequences into inline functions. | Miles Bader | |
2002-07-24 | Misc small cleanups. | Miles Bader | |
2002-07-24 | Remove, since it's entirely incorrect | Miles Bader | |
2002-07-23 | * Automatically try to unmap heap free-areas when they get very big. | Miles Bader | |
* Instead of using mmap/munmap directly for large allocations, just use the heap for everything (this is reasonable now that heap memory can be unmapped). * Use sbrk instead of mmap/munmap on systems with an MMU. | |||
2002-07-19 | Doc fix. | Miles Bader | |
2002-07-19 | Rename mutex stuff to use heap-specific names. | Miles Bader | |
Doc fix. | |||
2002-07-18 | Miles Bader implemented a new mmap based malloc which is much | Eric Andersen | |
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! |