cvs commit: src/lib/libc/stdlib malloc.c rb.h

Jason Evans jasone at
Mon Jun 16 23:42:16 UTC 2008

jasone      2008-06-16 23:42:05 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    lib/libc/stdlib      malloc.c 
  Added files:           (Branch: RELENG_7)
    lib/libc/stdlib      rb.h 
  SVN rev 179836 on 2008-06-16 23:42:05Z by jasone
  MFC allocator improvements and fixes:
  * Implement more compact red-black trees, thus reducing memory usage
    by ~0.5-1%.
  * Add a separate tree to track dirty-page-containing chunks, thus
    improving worst case allocation performance.
  * Fix a deadlock in base_alloc() for the error (OOM) path.
  * Catch integer overflow for huge allocations when using sbrk(2).
  * Fix bit vector initialization for run headers.  This fix has no
    practical impact for correct programs.  Incorrect programs will
    potentially experience allocation failures rather than memory
    corruption, both of which are "undefined behavior".
  Revision   Changes    Path  +209 -162  src/lib/libc/stdlib/malloc.c    +947 -0    src/lib/libc/stdlib/rb.h (new)

More information about the cvs-src mailing list