6e84200c0a
This patch adds virtio-pmem driver for KVM guest. Guest reads the persistent memory range information from Qemu over VIRTIO and registers it on nvdimm_bus. It also creates a nd_region object with the persistent memory range information so that existing 'nvdimm/pmem' driver can reserve this into system memory map. This way 'virtio-pmem' driver uses existing functionality of pmem driver to register persistent memory compatible for DAX capable filesystems. This also provides function to perform guest flush over VIRTIO from 'pmem' driver when userspace performs flush on DAX memory range. Signed-off-by: Pankaj Gupta <pagupta@redhat.com> Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Jakub Staron <jstaron@google.com> Tested-by: Jakub Staron <jstaron@google.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
32 lines
834 B
Makefile
32 lines
834 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-$(CONFIG_LIBNVDIMM) += libnvdimm.o
|
|
obj-$(CONFIG_BLK_DEV_PMEM) += nd_pmem.o
|
|
obj-$(CONFIG_ND_BTT) += nd_btt.o
|
|
obj-$(CONFIG_ND_BLK) += nd_blk.o
|
|
obj-$(CONFIG_X86_PMEM_LEGACY) += nd_e820.o
|
|
obj-$(CONFIG_OF_PMEM) += of_pmem.o
|
|
obj-$(CONFIG_VIRTIO_PMEM) += virtio_pmem.o nd_virtio.o
|
|
|
|
nd_pmem-y := pmem.o
|
|
|
|
nd_btt-y := btt.o
|
|
|
|
nd_blk-y := blk.o
|
|
|
|
nd_e820-y := e820.o
|
|
|
|
libnvdimm-y := core.o
|
|
libnvdimm-y += bus.o
|
|
libnvdimm-y += dimm_devs.o
|
|
libnvdimm-y += dimm.o
|
|
libnvdimm-y += region_devs.o
|
|
libnvdimm-y += region.o
|
|
libnvdimm-y += namespace_devs.o
|
|
libnvdimm-y += label.o
|
|
libnvdimm-y += badrange.o
|
|
libnvdimm-$(CONFIG_ND_CLAIM) += claim.o
|
|
libnvdimm-$(CONFIG_BTT) += btt_devs.o
|
|
libnvdimm-$(CONFIG_NVDIMM_PFN) += pfn_devs.o
|
|
libnvdimm-$(CONFIG_NVDIMM_DAX) += dax_devs.o
|
|
libnvdimm-$(CONFIG_NVDIMM_KEYS) += security.o
|