[dm-devel] [PATCH 0/3] initial release of dm thin provisioning target
Mike Snitzer
snitzer at redhat.com
Fri Jul 8 22:19:49 UTC 2011
Alasdair,
Please consider this initial release of the new Device Mapper thin
provisioning target (with scalable snapshot support) for inclusion in
linux-next (with the goal being upstream inclusion in Linux 3.1).
There is significant interest in this thin provisioning target. It is
EXPERIMENTAL but we are working aggressively to improve the code. All
of our tests pass (test-suite listed below). We would like to get it
upstream as soon as reasonable to encourage early adopters that might
help us with further testing and features.
It is understood that there may be various changes required but until
it gets upstream it would be very helpful if you could refrain from
editing these patches in place. Layering on additional patches is
very much preferred (so that we can easily fold them back into the
git tree, listed below, while pending upstream inclusion).
That said, I've layered these patches ontop of your editing tree:
ftp://sources.redhat.com/pub/dm/patches/2.6-unstable/editing/patches/series.html
All patches are available here too:
http://people.redhat.com/msnitzer/patches/upstream/dm-thinp/series.html
The git tree that we've been using for development can be found here
(though it is missing some checkpatch and misc. fixes I made today,
Joe will likely push those on Monday):
git://github.com/jthornber/linux-2.6.git thin-dev
The incremental patch with my checkpatch and misc fixes is here:
http://people.redhat.com/msnitzer/patches/upstream/dm-thinp/dm-thinp-checkpath-misc.patch
The thinp test-suite (requires ruby 1.9) is available here:
git://github.com/jthornber/thinp-test-suite.git
All comments/review would be appreciated.
Joe Thornber (3):
dm: add dm_bdev
dm persistent data: a library for storing metadata in DM targets
dm thin: thin provisioning target
Documentation/device-mapper/persistent-data.txt | 90 +
Documentation/device-mapper/thin-provisioning.txt | 248 +++
drivers/md/Kconfig | 8 +
drivers/md/Makefile | 3 +
drivers/md/dm-thin-metadata.c | 1281 ++++++++++++
drivers/md/dm-thin-metadata.h | 164 ++
drivers/md/dm-thin.c | 2204 ++++++++++++++++++++
drivers/md/dm.c | 11 +-
drivers/md/persistent-data/Kconfig | 9 +
drivers/md/persistent-data/Makefile | 10 +
drivers/md/persistent-data/dm-block-manager.c | 931 +++++++++
drivers/md/persistent-data/dm-block-manager.h | 110 +
drivers/md/persistent-data/dm-btree-internal.h | 141 ++
drivers/md/persistent-data/dm-btree-remove.c | 540 +++++
drivers/md/persistent-data/dm-btree-spine.c | 192 ++
drivers/md/persistent-data/dm-btree.c | 871 ++++++++
drivers/md/persistent-data/dm-btree.h | 146 ++
drivers/md/persistent-data/dm-pd-module.c | 18 +
drivers/md/persistent-data/dm-space-map-common.h | 99 +
drivers/md/persistent-data/dm-space-map-disk.c | 624 ++++++
drivers/md/persistent-data/dm-space-map-disk.h | 21 +
drivers/md/persistent-data/dm-space-map-metadata.c | 878 ++++++++
drivers/md/persistent-data/dm-space-map-metadata.h | 29 +
drivers/md/persistent-data/dm-space-map.h | 116 +
.../md/persistent-data/dm-transaction-manager.c | 442 ++++
.../md/persistent-data/dm-transaction-manager.h | 139 ++
include/linux/device-mapper.h | 1 +
27 files changed, 9324 insertions(+), 2 deletions(-)
create mode 100644 Documentation/device-mapper/persistent-data.txt
create mode 100644 Documentation/device-mapper/thin-provisioning.txt
create mode 100644 drivers/md/dm-thin-metadata.c
create mode 100644 drivers/md/dm-thin-metadata.h
create mode 100644 drivers/md/dm-thin.c
create mode 100644 drivers/md/persistent-data/Kconfig
create mode 100644 drivers/md/persistent-data/Makefile
create mode 100644 drivers/md/persistent-data/dm-block-manager.c
create mode 100644 drivers/md/persistent-data/dm-block-manager.h
create mode 100644 drivers/md/persistent-data/dm-btree-internal.h
create mode 100644 drivers/md/persistent-data/dm-btree-remove.c
create mode 100644 drivers/md/persistent-data/dm-btree-spine.c
create mode 100644 drivers/md/persistent-data/dm-btree.c
create mode 100644 drivers/md/persistent-data/dm-btree.h
create mode 100644 drivers/md/persistent-data/dm-pd-module.c
create mode 100644 drivers/md/persistent-data/dm-space-map-common.h
create mode 100644 drivers/md/persistent-data/dm-space-map-disk.c
create mode 100644 drivers/md/persistent-data/dm-space-map-disk.h
create mode 100644 drivers/md/persistent-data/dm-space-map-metadata.c
create mode 100644 drivers/md/persistent-data/dm-space-map-metadata.h
create mode 100644 drivers/md/persistent-data/dm-space-map.h
create mode 100644 drivers/md/persistent-data/dm-transaction-manager.c
create mode 100644 drivers/md/persistent-data/dm-transaction-manager.h
More information about the dm-devel
mailing list