1# SPDX-License-Identifier: GPL-2.0 2# 3# Makefile for the kernel software RAID and LVM drivers. 4# 5 6dm-mod-y += dm.o dm-table.o dm-target.o dm-linear.o dm-stripe.o \ 7 dm-ioctl.o dm-io.o dm-kcopyd.o dm-sysfs.o dm-stats.o \ 8 dm-rq.o 9dm-multipath-y += dm-path-selector.o dm-mpath.o 10dm-snapshot-y += dm-snap.o dm-exception-store.o dm-snap-transient.o \ 11 dm-snap-persistent.o 12dm-mirror-y += dm-raid1.o 13dm-log-userspace-y \ 14 += dm-log-userspace-base.o dm-log-userspace-transfer.o 15dm-bio-prison-y += dm-bio-prison-v1.o dm-bio-prison-v2.o 16dm-thin-pool-y += dm-thin.o dm-thin-metadata.o 17dm-cache-y += dm-cache-target.o dm-cache-metadata.o dm-cache-policy.o \ 18 dm-cache-background-tracker.o 19dm-cache-smq-y += dm-cache-policy-smq.o 20dm-ebs-y += dm-ebs-target.o 21dm-era-y += dm-era-target.o 22dm-clone-y += dm-clone-target.o dm-clone-metadata.o 23dm-verity-y += dm-verity-target.o 24md-mod-y += md.o md-bitmap.o 25raid456-y += raid5.o raid5-cache.o raid5-ppl.o 26dm-zoned-y += dm-zoned-target.o dm-zoned-metadata.o dm-zoned-reclaim.o 27linear-y += md-linear.o 28multipath-y += md-multipath.o 29faulty-y += md-faulty.o 30 31# Note: link order is important. All raid personalities 32# and must come before md.o, as they each initialise 33# themselves, and md.o may use the personalities when it 34# auto-initialised. 35 36obj-$(CONFIG_MD_LINEAR) += linear.o 37obj-$(CONFIG_MD_RAID0) += raid0.o 38obj-$(CONFIG_MD_RAID1) += raid1.o 39obj-$(CONFIG_MD_RAID10) += raid10.o 40obj-$(CONFIG_MD_RAID456) += raid456.o 41obj-$(CONFIG_MD_MULTIPATH) += multipath.o 42obj-$(CONFIG_MD_FAULTY) += faulty.o 43obj-$(CONFIG_MD_CLUSTER) += md-cluster.o 44obj-$(CONFIG_BCACHE) += bcache/ 45obj-$(CONFIG_BLK_DEV_MD) += md-mod.o 46ifeq ($(CONFIG_BLK_DEV_MD),y) 47obj-y += md-autodetect.o 48endif 49obj-$(CONFIG_BLK_DEV_DM) += dm-mod.o 50obj-$(CONFIG_BLK_DEV_DM_BUILTIN) += dm-builtin.o 51obj-$(CONFIG_DM_UNSTRIPED) += dm-unstripe.o 52obj-$(CONFIG_DM_BUFIO) += dm-bufio.o 53obj-$(CONFIG_DM_BIO_PRISON) += dm-bio-prison.o 54obj-$(CONFIG_DM_CRYPT) += dm-crypt.o 55obj-$(CONFIG_DM_DELAY) += dm-delay.o 56obj-$(CONFIG_DM_DUST) += dm-dust.o 57obj-$(CONFIG_DM_FLAKEY) += dm-flakey.o 58obj-$(CONFIG_DM_MULTIPATH) += dm-multipath.o dm-round-robin.o 59obj-$(CONFIG_DM_MULTIPATH_QL) += dm-queue-length.o 60obj-$(CONFIG_DM_MULTIPATH_ST) += dm-service-time.o 61obj-$(CONFIG_DM_MULTIPATH_HST) += dm-historical-service-time.o 62obj-$(CONFIG_DM_SWITCH) += dm-switch.o 63obj-$(CONFIG_DM_SNAPSHOT) += dm-snapshot.o 64obj-$(CONFIG_DM_PERSISTENT_DATA) += persistent-data/ 65obj-$(CONFIG_DM_MIRROR) += dm-mirror.o dm-log.o dm-region-hash.o 66obj-$(CONFIG_DM_LOG_USERSPACE) += dm-log-userspace.o 67obj-$(CONFIG_DM_ZERO) += dm-zero.o 68obj-$(CONFIG_DM_RAID) += dm-raid.o 69obj-$(CONFIG_DM_THIN_PROVISIONING) += dm-thin-pool.o 70obj-$(CONFIG_DM_VERITY) += dm-verity.o 71obj-$(CONFIG_DM_CACHE) += dm-cache.o 72obj-$(CONFIG_DM_CACHE_SMQ) += dm-cache-smq.o 73obj-$(CONFIG_DM_EBS) += dm-ebs.o 74obj-$(CONFIG_DM_ERA) += dm-era.o 75obj-$(CONFIG_DM_CLONE) += dm-clone.o 76obj-$(CONFIG_DM_LOG_WRITES) += dm-log-writes.o 77obj-$(CONFIG_DM_INTEGRITY) += dm-integrity.o 78obj-$(CONFIG_DM_ZONED) += dm-zoned.o 79obj-$(CONFIG_DM_WRITECACHE) += dm-writecache.o 80 81ifeq ($(CONFIG_DM_INIT),y) 82dm-mod-objs += dm-init.o 83endif 84 85ifeq ($(CONFIG_DM_UEVENT),y) 86dm-mod-objs += dm-uevent.o 87endif 88 89ifeq ($(CONFIG_DM_VERITY_FEC),y) 90dm-verity-objs += dm-verity-fec.o 91endif 92 93ifeq ($(CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG),y) 94dm-verity-objs += dm-verity-verify-sig.o 95endif 96