[PATCH 7/7] zram/xvmalloc: combine duplicate block delete code
ngupta at vflare.org
Mon Jan 31 05:31:21 PST 2011
On 01/28/2011 10:01 AM, Robert Jennings wrote:
> This patch eliminates duplicate code. The remove_block_head function
> is a special case of remove_block which can be contained in remove_block
> without confusion.
> The portion of code in remove_block_head which was noted as "DEBUG ONLY"
> is now mandatory. Doing this provides consistent management of the double
> linked list of blocks under a freelist and makes this consolidation
> of delete block code safe. The first and last blocks will have NULL
> pointers in their previous and next page pointers respectively.
> Additionally, any time a block is removed from a free list the next and
> previous pointers will be set to NULL to avoid misuse outside xvmalloc.
> Signed-off-by: Robert Jennings<rcj at linux.vnet.ibm.com>
The reason for introducing remove_block_head() as a separate function
was to make malloc slightly faster but since I lack any profiling data,
I'm not very sure if this may impact performance. Ideally, some sort of
data with some malloc heavy test would have been useful. Anyways, I
think major allocator changes will happen when we make xvmalloc
allocated memory reclaimable, so maybe we can defer profiling.
Acked-by: Nitin Gupta <ngupta at vflare.org>
More information about the devel