[dm-devel] [RFC PATCH 00/16] dm-inplace-compression block device

Ram Pai linuxram at us.ibm.com
Mon Aug 15 17:36:37 UTC 2016


This patch series provides a generic device-mapper inplace compression device.
Originally written by Shaohua Li.
https://www.redhat.com/archives/dm-devel/2013-December/msg00143.html

I have optimized the code and used it as a compressed swap device supporting
exterme levels of swap traffic using a NVMe device as a backend.

Comments from Alasdair have been incorporated.
https://www.redhat.com/archives/dm-devel/2013-December/msg00144.html

Testing:

This patch is tested thoroughly as a swap device on Power machine only.  More
testing is needed before it can be used as a generic compression device.

Your comments to improve the code is very much appreciated.

Ram Pai (15):
  DM: Ability to choose the compressor.
  DM: Error if enough space is not available.
  DM: Ensure that the read request is within the device range.
  DM: allocation/free helper routines.
  DM: separate out compression and decompression routines.
  DM: Optimize memory allocated to hold compressed buffer.
  DM: Tag a magicmarker at the end of each compressed segment.
  DM: Delay allocation of decompression buffer during read.
  DM: Try to use the bio buffer for decompression instead of allocating
    one.
  DM: Try to avoid temporary buffer allocation to hold compressed data.
  DM: release unneeded buffer as soon as possible.
  DM: macros to set and get the state of the request.
  DM: Wasted bio copy.
  DM: Add sysfs parameters to track total memory saved and allocated.
  DM: add documentation for dm-inplace-compress.

Shaohua Li (1):
  DM: dm-inplace-compress: a compressed DM target for SSD

 .../device-mapper/dm-inplace-compress.text         |  138 ++
 drivers/md/Kconfig                                 |    6 +
 drivers/md/Makefile                                |    1 +
 drivers/md/dm-inplace-compress.c                   | 1792 ++++++++++++++++++++
 drivers/md/dm-inplace-compress.h                   |  162 ++
 5 files changed, 2099 insertions(+)
 create mode 100644 Documentation/device-mapper/dm-inplace-compress.text
 create mode 100644 drivers/md/dm-inplace-compress.c
 create mode 100644 drivers/md/dm-inplace-compress.h

-- 
1.8.3.1




More information about the dm-devel mailing list