dax: Kill DEV_DAX_PMEM_COMPAT
authorDan Williams <dan.j.williams@intel.com>
Mon, 15 Nov 2021 21:20:57 +0000 (13:20 -0800)
committerDan Williams <dan.j.williams@intel.com>
Thu, 25 Nov 2021 03:21:35 +0000 (19:21 -0800)
commit83762cb5c7c464af4cbaba5679af31c7fe534979
treeb06e78c175214dfe3679bd20233c4caffd9c216b
parentfa55b7dcdc43c1aa1ba12bca9d2dd4318c2a0dbf
dax: Kill DEV_DAX_PMEM_COMPAT

The /sys/class/dax compatibility option has shipped in the kernel for 4
years now which should be sufficient time for tools to abandon the old
ABI in favor of the /sys/bus/dax device-model. Delete it now and see if
anyone screams.

Since this compatibility option shipped there has been more reports of
users being surprised by the compat ABI than surprised by the "new", so
the compat infrastructure has outlived its usefulness. Recall that
/sys/bus/dax device-model is required for the dax kmem driver which
allows PMEM to be used as "System RAM".

The following projects were known to have a dependency on /sys/class/dax
and have dropped their dependency as of the listed version:

- ndctl (including libndctl, daxctl, and libdaxctl): v64+
- fio: v3.13+
- pmdk: v1.5.2+

As further evidence this option is no longer needed some distributions
have already stopped enabling CONFIG_DEV_DAX_PMEM_COMPAT.

Cc: Ira Weiny <ira.weiny@intel.com>
Cc: Dave Jiang <dave.jiang@intel.com>
Reported-by: Vishal Verma <vishal.l.verma@intel.com>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Jane Chu <jane.chu@oracle.com>
Link: https://lore.kernel.org/r/163701116195.3784476.726128179293466337.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
15 files changed:
Documentation/ABI/obsolete/sysfs-class-dax [deleted file]
drivers/dax/Kconfig
drivers/dax/Makefile
drivers/dax/bus.c
drivers/dax/bus.h
drivers/dax/device.c
drivers/dax/pmem.c [moved from drivers/dax/pmem/core.c with 75% similarity]
drivers/dax/pmem/Makefile
drivers/dax/pmem/compat.c [deleted file]
drivers/dax/pmem/pmem.c
tools/testing/nvdimm/Kbuild
tools/testing/nvdimm/dax_pmem_compat_test.c [deleted file]
tools/testing/nvdimm/dax_pmem_core_test.c [deleted file]
tools/testing/nvdimm/test/ndtest.c
tools/testing/nvdimm/test/nfit.c