]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
lightnvm: deprecated OCSSD support and schedule it for removal in Linux 5.15
authorChristoph Hellwig <hch@lst.de>
Tue, 13 Apr 2021 10:52:57 +0000 (10:52 +0000)
committerJens Axboe <axboe@kernel.dk>
Tue, 13 Apr 2021 15:16:12 +0000 (09:16 -0600)
Lightnvm was an innovative idea to expose more low-level control over SSDs.
But it failed to get properly standardized and remains a non-standarized
extension to NVMe that requires vendor specific quirks for a few now mostly
obsolete SSD devices.  The standardized ZNS command set for NVMe has take
over a lot of the approaches and allows for fully standardized operation.

Remove the Linux code to support open channel SSDs as the few production
deployments of the above mentioned SSDs are using userspace driver stacks
instead of the fairly limited Linux support.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Javier González <javier@javigon.com>
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Link: https://lore.kernel.org/r/20210413105257.159260-5-matias.bjorling@wdc.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/lightnvm/Kconfig
drivers/lightnvm/core.c

index 4c2ce210c1237d0fb36fd8b519564dcbb5b54070..04caa0f2d445c76c2418e8390e265de5e21937c9 100644 (file)
@@ -4,7 +4,7 @@
 #
 
 menuconfig NVM
-       bool "Open-Channel SSD target support"
+       bool "Open-Channel SSD target support (DEPRECATED)"
        depends on BLOCK
        help
          Say Y here to get to enable Open-channel SSDs.
@@ -15,6 +15,8 @@ menuconfig NVM
          If you say N, all options in this submenu will be skipped and disabled
          only do this if you know what you are doing.
 
+         This code is deprecated and will be removed in Linux 5.15.
+
 if NVM
 
 config NVM_PBLK
index 42774beeba94d724a4bf3240fdbc944f57851807..40a948c08a0bfd3b4c1447713d9e1e47acca7d40 100644 (file)
@@ -1174,6 +1174,8 @@ int nvm_register(struct nvm_dev *dev)
 {
        int ret, exp_pool_size;
 
+       pr_warn_once("lightnvm support is deprecated and will be removed in Linux 5.15.\n");
+
        if (!dev->q || !dev->ops) {
                kref_put(&dev->ref, nvm_free);
                return -EINVAL;