]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Implement support for buffers larger than PAGE_SIZE in MemGuard. Adds
authorbmilekic <bmilekic@FreeBSD.org>
Thu, 10 Feb 2005 22:36:05 +0000 (22:36 +0000)
committerbmilekic <bmilekic@FreeBSD.org>
Thu, 10 Feb 2005 22:36:05 +0000 (22:36 +0000)
commitc4f26f55eee825680c2e743b4a7cb4b39c1c9fd3
treecf845064510b4614e26854bc918c0073a7e7de7d
parentba3f8d87f5faf2f81cab3adf006abe513cb67573
Implement support for buffers larger than PAGE_SIZE in MemGuard.  Adds
a little bit of complexity but performance requirements lacking (this is
a debugging allocator after all), it's really not too bad (still
only 317 lines).

Also add an additional check to help catch really weird 3-threads-involved
races: make memguard_free() write to the first page handed back, always,
before it does anything else.

Note that there is still a problem in VM+PMAP (specifically with
vm_map_protect) w.r.t. MemGuard uses it, but this will be fixed shortly
and this change stands on its own.
sys/vm/memguard.c