mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-07 04:39:35 +00:00
158fa75811
This code has been used successfully a few times in the past to detect that a pool was used after being freed. Its main goal is to allocate a full page for each object so that they are always released individually and unmapped from memory. This way if any part of the code reference the object after is was freed and before it is reallocated, a segv occurs at the exact offending location. It does a few extra things such as writing to the memory area before freeing to detect double-frees and free of read-only areas, and placing the data at the end of the page instead of the beginning so that out of bounds accesses are easier to spot. The amount of memory used with this is huge (about 10 times the regular usage) but it can be useful sometimes. |
||
---|---|---|
.. | ||
common | ||
import | ||
proto | ||
types |