On Tuesday 17 March 2009 22:36:46 Nitin Gupta wrote:drivers/block/Kconfig | 22 +
drivers/block/Makefile | 1 +
drivers/block/compcache.c | 995
+++++++++++++++++++++++++++++++++++++++++++++ drivers/block/compcache.h | 160 ++++++++
4 files changed, 1178 insertions(+), 0 deletions(-)
Creates RAM based block device (ramzswap0) which can be used as swap
device. Pages swapped to this are compressed and stored in memory itself.
The module is called compcache.ko. It depends on:
- xvmalloc.ko: memory allocator
- lzo_compress.ko
- lzo_decompress.ko
See Documentation/blockdev/compcache.txt for usage details.
Project home: http://code.google.com/p/compcache/
I wonder how hard it would be to make the compression code
use an arbitrary file or device for the storage backend rather
than make a new block device? Then you could make a new ram
block device that can swap its pages out (or even extend brd.c
with that functionality, or use loop on tmpfs etc).