<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libc/stdlib/malloc.3, branch release/7.2.0_cvs</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F7.2.0_cvs</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F7.2.0_cvs'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2009-05-01T02:51:58Z</updated>
<entry>
<title>Copy releng/7.2 to release/7.2.0 for FreeBSD 7.2-RELEASE.</title>
<updated>2009-05-01T02:51:58Z</updated>
<author>
<name>Ken Smith</name>
<email>kensmith@FreeBSD.org</email>
</author>
<published>2009-05-01T02:51:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b205d83df7763ca1f099bce5ac12a05862a626c4'/>
<id>urn:sha1:b205d83df7763ca1f099bce5ac12a05862a626c4</id>
<content type='text'>
Approved by:	re (implicit)

This commit was manufactured to restore the state of the 7.2-RELEASE image.
</content>
</entry>
<entry>
<title>MFC:</title>
<updated>2008-11-10T17:30:49Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2008-11-10T17:30:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d05be0bb64586f5742b8efeaf997ac51b1db87e1'/>
<id>urn:sha1:d05be0bb64586f5742b8efeaf997ac51b1db87e1</id>
<content type='text'>
	Revert to preferring mmap(2) over sbrk(2) when mapping memory, due
	to potential extreme contention in the kernel for multi-threaded
	applications on SMP systems.

Approved by:	re (kib)
</content>
</entry>
<entry>
<title>MFC: Merge malloc(3) improvements and fixes.  The highlights are:</title>
<updated>2008-03-07T22:39:39Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2008-03-07T22:39:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d25eaea3901102b810ad0b75e3f464935b2b95ca'/>
<id>urn:sha1:d25eaea3901102b810ad0b75e3f464935b2b95ca</id>
<content type='text'>
* Avoid re-zeroing memory in calloc() when possible.

* Use pthread mutexes where possible instead of libc "spinlocks", and
  actually spin some during contention before blocking.

* Implement dynamic load balancing of thread--&gt;arena mapping.

* Avoid floating point math in order to avoid increased context switch
  overhead for applications that otherwise would not use floating point
  math.

* Restructure how sbrk() and mmap() are used to acquire memory mappings.
  This provides a way to force malloc to only use sbrk(), which can be
  useful in the context of resource limits.

* Reduce the number of mmap() calls typically necessary when allocating
  a chunk.

* Track dirty unused pages so that they can be purged if they exceed a
  threshold.

* Try to realloc() large objects in place.

* Manage page runs with trees instead of chunk maps, which allows
  logarithmic-time run allocation.
</content>
</entry>
<entry>
<title>Add information about the implications of using mmap(2) instead of sbrk(2).</title>
<updated>2007-06-15T22:32:33Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2007-06-15T22:32:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0061e03d7fa2c712abf1fd3e267899f614f4598c'/>
<id>urn:sha1:0061e03d7fa2c712abf1fd3e267899f614f4598c</id>
<content type='text'>
Submitted by:	bmah, jhb
</content>
</entry>
<entry>
<title>Update the IMPLEMENTATION NOTES section to reflect recent malloc</title>
<updated>2007-03-28T04:34:19Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2007-03-28T04:34:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0a19939042534ba505aef7418a97fc9420491268'/>
<id>urn:sha1:0a19939042534ba505aef7418a97fc9420491268</id>
<content type='text'>
enhancements.
</content>
</entry>
<entry>
<title>Markup fixes.</title>
<updated>2006-09-17T21:27:35Z</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@FreeBSD.org</email>
</author>
<published>2006-09-17T21:27:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a73a3ab56baabfbc4b63c100ee64951a407e9416'/>
<id>urn:sha1:a73a3ab56baabfbc4b63c100ee64951a407e9416</id>
<content type='text'>
</content>
</entry>
<entry>
<title>s/soley/solely</title>
<updated>2006-04-13T18:19:44Z</updated>
<author>
<name>Jens Schweikhardt</name>
<email>schweikh@FreeBSD.org</email>
</author>
<published>2006-04-13T18:19:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e4b2624f46c4aa7d0408e791f9adb9aea448e35e'/>
<id>urn:sha1:e4b2624f46c4aa7d0408e791f9adb9aea448e35e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add malloc_usable_size() to the RETURN VALUES section.</title>
<updated>2006-04-04T20:27:53Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2006-04-04T20:27:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=94fc7dc0d57481a7cbb583c8b8df2be3ab8ce661'/>
<id>urn:sha1:94fc7dc0d57481a7cbb583c8b8df2be3ab8ce661</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add malloc_usable_size(3).</title>
<updated>2006-03-28T22:16:04Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2006-03-28T22:16:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6b2c15da6a35c2af09e7e753ffc3f527d402a2cf'/>
<id>urn:sha1:6b2c15da6a35c2af09e7e753ffc3f527d402a2cf</id>
<content type='text'>
Discussed with:		arch@
</content>
</entry>
<entry>
<title>Modify allocation policy, in order to avoid excessive fragmentation for</title>
<updated>2006-03-17T09:00:27Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2006-03-17T09:00:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=2d07e432d46738a79f7d6edd1d87d5dcaba1e8a4'/>
<id>urn:sha1:2d07e432d46738a79f7d6edd1d87d5dcaba1e8a4</id>
<content type='text'>
allocation patterns that involve a relatively even mixture of many
different size classes.

Reduce the chunk size from 16 MB to 2 MB.  Since chunks are now carved up
using an address-ordered first best fit policy, VM map fragmentation is
much less likely, which makes smaller chunks not as much of a risk.  This
reduces the virtual memory size of most applications.

Remove redzones, since program buffer overruns are no longer as likely to
corrupt malloc data structures.

Remove the C MALLOC_OPTIONS flag, and add H and S.
</content>
</entry>
</feed>
