summaryrefslogtreecommitdiffstats
path: root/drivers/nvdimm
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2017-11-17 19:23:08 -0500
committerDan Williams <dan.j.williams@intel.com>2017-12-04 13:19:20 -0500
commitcdd77d3e193031cc67426cd671d8aa370f7dfee4 (patch)
tree593f495eb83145d25e848a4a5c88bfb6f5509440 /drivers/nvdimm
parentae64f9bd1d3621b5e60d7363bc20afb46aede215 (diff)
nfit, libnvdimm: deprecate the generic SMART ioctl
The kernel's ND_IOCTL_SMART_THRESHOLD command is based on a payload definition that has become broken / out-of-sync with recent versions of the NVDIMM_FAMILY_INTEL definition. Deprecate the use of the ND_IOCTL_SMART_THRESHOLD command in favor of the ND_CMD_CALL approach taken by NVDIMM_FAMILY_{HPE,MSFT}, where we can manage the per-vendor variance in userspace. In a couple years, when the new scheme is widely deployed in userspace packages, the ND_IOCTL_SMART_THRESHOLD support can be removed. For now we prevent new binaries from compiling against the kernel header definitions, but kernel still compatible with old binaries. The libndctl.h [1] header is now the authoritative interface definition for NVDIMM SMART. [1]: https://github.com/pmem/ndctl Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm')
-rw-r--r--drivers/nvdimm/bus.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c
index 0a5e6cd758fe..78eabc3a1ab1 100644
--- a/drivers/nvdimm/bus.c
+++ b/drivers/nvdimm/bus.c
@@ -1142,9 +1142,6 @@ int __init nvdimm_bus_init(void)
1142{ 1142{
1143 int rc; 1143 int rc;
1144 1144
1145 BUILD_BUG_ON(sizeof(struct nd_smart_payload) != 128);
1146 BUILD_BUG_ON(sizeof(struct nd_smart_threshold_payload) != 8);
1147
1148 rc = bus_register(&nvdimm_bus_type); 1145 rc = bus_register(&nvdimm_bus_type);
1149 if (rc) 1146 if (rc)
1150 return rc; 1147 return rc;