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