Skip to content

Commit f11aca8

Browse files
lorelei-sakaiMike Snitzer
authored andcommitted
dm vdo: enable configuration and building of dm-vdo
dm-vdo targets are not supported for 32-bit configurations. A vdo target typically requires 1 to 1.5 GB of memory at any given time, which is likely a large fraction of the addressable memory of a 32-bit system. At the same time, the amount of addressable storage attached to a 32-bit system may not be large enough for deduplication to provide much benefit. Because of these concerns, 32-bit platforms are deemed unlikely to benefit from using a vdo target, so dm-vdo is targeted only at 64-bit platforms. Co-developed-by: J. corwin Coburn <corwin@hurlbutnet.net> Signed-off-by: J. corwin Coburn <corwin@hurlbutnet.net> Co-developed-by: John Wiele <jwiele@redhat.com> Signed-off-by: John Wiele <jwiele@redhat.com> Signed-off-by: Matthew Sakai <msakai@redhat.com> Signed-off-by: Mike Snitzer <snitzer@kernel.org>
1 parent 03d1e20 commit f11aca8

2 files changed

Lines changed: 18 additions & 0 deletions

File tree

drivers/md/Kconfig

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -498,6 +498,22 @@ config DM_FLAKEY
498498
help
499499
A target that intermittently fails I/O for debugging purposes.
500500

501+
config DM_VDO
502+
tristate "VDO: deduplication and compression target"
503+
depends on 64BIT
504+
depends on BLK_DEV_DM
505+
select DM_BUFIO
506+
select LZ4_COMPRESS
507+
select LZ4_DECOMPRESS
508+
help
509+
This device mapper target presents a block device with
510+
deduplication, compression and thin-provisioning.
511+
512+
To compile this code as a module, choose M here: the module will
513+
be called dm-vdo.
514+
515+
If unsure, say N.
516+
501517
config DM_VERITY
502518
tristate "Verity target support"
503519
depends on BLK_DEV_DM

drivers/md/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ dm-ebs-y += dm-ebs-target.o
2525
dm-era-y += dm-era-target.o
2626
dm-clone-y += dm-clone-target.o dm-clone-metadata.o
2727
dm-verity-y += dm-verity-target.o
28+
dm-vdo-y += dm-vdo-target.o $(patsubst drivers/md/dm-vdo/%.c,dm-vdo/%.o,$(wildcard $(src)/dm-vdo/*.c))
2829
dm-zoned-y += dm-zoned-target.o dm-zoned-metadata.o dm-zoned-reclaim.o
2930

3031
md-mod-y += md.o md-bitmap.o
@@ -68,6 +69,7 @@ obj-$(CONFIG_DM_ZERO) += dm-zero.o
6869
obj-$(CONFIG_DM_RAID) += dm-raid.o
6970
obj-$(CONFIG_DM_THIN_PROVISIONING) += dm-thin-pool.o
7071
obj-$(CONFIG_DM_VERITY) += dm-verity.o
72+
obj-$(CONFIG_DM_VDO) += dm-vdo.o
7173
obj-$(CONFIG_DM_CACHE) += dm-cache.o
7274
obj-$(CONFIG_DM_CACHE_SMQ) += dm-cache-smq.o
7375
obj-$(CONFIG_DM_EBS) += dm-ebs.o

0 commit comments

Comments
 (0)