nvdimm/region: Move cache management to the region driver
authorDan Williams <dan.j.williams@intel.com>
Thu, 1 Dec 2022 22:03:35 +0000 (14:03 -0800)
committerDan Williams <dan.j.williams@intel.com>
Sat, 3 Dec 2022 07:52:32 +0000 (23:52 -0800)
commitdc370b28c8425669e7ed5af4c01540645cfb00ec
tree37e58358cc8be8750eca80a2342e7459d25c9464
parent07cb5f705b4fe9e1386a610da4cb3c063267714f
nvdimm/region: Move cache management to the region driver

Now that cpu_cache_invalidate_memregion() is generically available, use
it to centralize CPU cache management in the nvdimm region driver.

This trades off removing redundant per-dimm CPU cache flushing with an
opportunistic flush on every region disable event to cover the case of
sensitive dirty data in the cache being written back to media after a
secure erase / overwrite event.

Reviewed-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/166993221550.1995348.16843505129579060258.stgit@dwillia2-xfh.jf.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/acpi/nfit/intel.c
drivers/nvdimm/region.c
drivers/nvdimm/region_devs.c
drivers/nvdimm/security.c
include/linux/libnvdimm.h