lkml.org 
[lkml]   [2010]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/4] zram: generic RAM based compressed R/W block devices (v2)
Date
* Changelog v1 vs v2
- Split file rename and code rename patches
- Removed useless swap related includes from zram_drv.c
- Various cleanups suggested by Minchan:
- Documented rzs->lock mutex in ramzswap_drv.h (see patch 1)
(this file is renamed to zram_drv.h in patch 2)
- remove useless 'index' argument in handle_zero_page()
- Edited comments/messages mentioning 'swap'
- Removed redundant return from void zram_slot_free_notify()

Creates RAM based block devices: /dev/zramX (X = 0, 1, ...).
Pages written to these disks are compressed and stored in memory
itself. These disks allow very fast I/O and compression provides
good amounts of memory savings.

This is enhancement over existing ramzswap driver which creates
virtual block devices (/dev/ramzswapX) which could be used only
as swap disks.

Now, with the ability to handle any kind of I/O request, zram
devices have lot more use cases:
- /tmp storage
- various caches under /var
- swap disks
- CacheFiles storage
- maybe even more! :)

Performance numbers can be found at:
http://code.google.com/p/compcache/wiki/zramperf

Stress testing results:
http://code.google.com/p/compcache/wiki/zramIOzone

Patch 1 makes core changes to support handling generic I/O
requests. Subsequent patches rename ramzswap* files to zram*
and similar changes in code and documentation.

Nitin Gupta (4):
Support generic I/O requests
Rename ramzswap files to zram
Rename ramzswap to zram in code
Rename ramzswap to zram in documentation

drivers/staging/Kconfig | 2 +-
drivers/staging/Makefile | 2 +-
drivers/staging/ramzswap/Kconfig | 21 -
drivers/staging/ramzswap/Makefile | 3 -
drivers/staging/ramzswap/ramzswap.txt | 51 --
drivers/staging/ramzswap/ramzswap_drv.c | 837 --------------------
drivers/staging/zram/Kconfig | 28 +
drivers/staging/zram/Makefile | 3 +
drivers/staging/{ramzswap => zram}/xvmalloc.c | 0
drivers/staging/{ramzswap => zram}/xvmalloc.h | 0
drivers/staging/{ramzswap => zram}/xvmalloc_int.h | 0
drivers/staging/zram/zram.txt | 62 ++
drivers/staging/zram/zram_drv.c | 804 +++++++++++++++++++
.../{ramzswap/ramzswap_drv.h => zram/zram_drv.h} | 71 +-
.../ramzswap_ioctl.h => zram/zram_ioctl.h} | 21 +-
15 files changed, 943 insertions(+), 962 deletions(-)
delete mode 100644 drivers/staging/ramzswap/Kconfig
delete mode 100644 drivers/staging/ramzswap/Makefile
delete mode 100644 drivers/staging/ramzswap/ramzswap.txt
delete mode 100644 drivers/staging/ramzswap/ramzswap_drv.c
create mode 100644 drivers/staging/zram/Kconfig
create mode 100644 drivers/staging/zram/Makefile
rename drivers/staging/{ramzswap => zram}/xvmalloc.c (100%)
rename drivers/staging/{ramzswap => zram}/xvmalloc.h (100%)
rename drivers/staging/{ramzswap => zram}/xvmalloc_int.h (100%)
create mode 100644 drivers/staging/zram/zram.txt
create mode 100644 drivers/staging/zram/zram_drv.c
rename drivers/staging/{ramzswap/ramzswap_drv.h => zram/zram_drv.h} (69%)
rename drivers/staging/{ramzswap/ramzswap_ioctl.h => zram/zram_ioctl.h} (68%)



\
 
 \ /
  Last update: 2010-06-01 10:03    [W:0.160 / U:0.240 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site