|
From: Graydon H. <gr...@po...> - 2006-07-14 23:45:43
Attachments:
mempool-trim.patch
|
Hi, This patch supplies a new client request for trimming a mempool to a specific range. Chunks contained in the range are preserved, chunks outside the range are released, chunks only partially intersecting the range are resized. This is motivated by the arena allocators in Mozilla, which support a mark/release LIFO allocation scheme in addition to whole-pool release. I've generalized slightly to a "trim to arbitrary extent" operation, because it's easier to implement and seems likely to cover the majority of pool-resizing operations in other client applications. -graydon |
|
From: Julian S. <js...@ac...> - 2006-07-17 11:43:10
|
> This patch supplies a new client request for trimming a mempool to a > specific range. Chunks contained in the range are preserved, chunks > outside the range are released, chunks only partially intersecting the > range are resized. This also looks good to me. J |
|
From: Julian S. <js...@ac...> - 2006-07-28 00:07:57
|
Committed (valgrind r5992). Thanks. J On Saturday 15 July 2006 00:45, Graydon Hoare wrote: > Hi, > > This patch supplies a new client request for trimming a mempool to a > specific range. Chunks contained in the range are preserved, chunks > outside the range are released, chunks only partially intersecting the > range are resized. > > This is motivated by the arena allocators in Mozilla, which support a > mark/release LIFO allocation scheme in addition to whole-pool release. > I've generalized slightly to a "trim to arbitrary extent" operation, > because it's easier to implement and seems likely to cover the majority > of pool-resizing operations in other client applications. > > -graydon |