[PATCH 0/7][v2] zram/xvmalloc: 64K page fixes and optimizations

Robert Jennings rcj at linux.vnet.ibm.com
Fri Jan 28 14:56:03 UTC 2011


Based on feedback this is version 2 of my patches to fix zram and the
xvmalloc allocator for 64K page size kernels along with a few small
zram optimizations.

I have dropped the patch to mark the device as non-rotational media as
this was duplicated elsewhere.  I also dropped the patch regarding caching
the indices for page size allocations because gcc is quite smart.

There are two new patches at the end of this patch set.  The first
changes zram to return zero'd pages for reads of pages which have not
been written to, this eliminates passing uninitialized pages back
to user-space.  The second new patch cleans up freelist pointer
management and combines the two delete node functions into one common
function.

The xvmalloc allocator is non-functional when running with a 64K page
size.  The first two patches fix 64K page related issues.
[1/7] [v2] zram/vmalloc: Correct tunings to enable use with 64K pages
[2/7] [v2] zram: Prevent overflow in logical block size

The next 3 patches provide some small optimizations for zram and
xvmalloc.
[3/7] [v2] zram/xvmalloc: free bit block insertion optimization
[4/7] [v2] zram/xvmalloc: create CONFIG_ZRAM_DEBUG for debug code
[5/7] [v2] zram/xvmalloc: Close 32byte hole on 64bit CPUs

These last 2 patches are new, see the description above.
[6/7] zram: Return zero'd pages on new reads
[7/7] zram/xvmalloc: combine duplicate block delete code

Thanks for the helpful reviews.

Regards,
Robert Jennings



More information about the devel mailing list