diff options
author | Dan Williams <dan.j.williams@intel.com> | 2017-11-17 16:23:08 -0800 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2017-12-04 10:19:20 -0800 |
commit | cdd77d3e193031cc67426cd671d8aa370f7dfee4 (patch) | |
tree | 593f495eb83145d25e848a4a5c88bfb6f5509440 /drivers/nvdimm | |
parent | ae64f9bd1d3621b5e60d7363bc20afb46aede215 (diff) | |
download | op-kernel-dev-cdd77d3e193031cc67426cd671d8aa370f7dfee4.zip op-kernel-dev-cdd77d3e193031cc67426cd671d8aa370f7dfee4.tar.gz |
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.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c index 0a5e6cd..78eabc3 100644 --- a/drivers/nvdimm/bus.c +++ b/drivers/nvdimm/bus.c @@ -1142,9 +1142,6 @@ int __init nvdimm_bus_init(void) { int rc; - BUILD_BUG_ON(sizeof(struct nd_smart_payload) != 128); - BUILD_BUG_ON(sizeof(struct nd_smart_threshold_payload) != 8); - rc = bus_register(&nvdimm_bus_type); if (rc) return rc; |