nvme: make SG_IO support optional
Translation SCSI commands to NVMe commands is rather pointless in general as applications must not expext to be able to use SCSI commands on a generic block device. Make the huge translation layer optional and hope no one will ever enable it in the future. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:
parent
bfd8947194
commit
4490733250
|
@ -8,3 +8,14 @@ config BLK_DEV_NVME
|
|||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called nvme.
|
||||
|
||||
config BLK_DEV_NVME_SCSI
|
||||
bool "SCSI emulation for NVMe device nodes"
|
||||
depends on BLK_DEV_NVME
|
||||
---help---
|
||||
This adds support for the SG_IO ioctl on the NVMe character
|
||||
and block devices nodes, as well a a translation for a small
|
||||
number of selected SCSI commands to NVMe commands to the NVMe
|
||||
driver. If you don't know what this means you probably want
|
||||
to say N here, and if you know what it means you probably
|
||||
want to say N as well.
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
|
||||
obj-$(CONFIG_BLK_DEV_NVME) += nvme.o
|
||||
|
||||
nvme-y += core.o pci.o scsi.o lightnvm.o
|
||||
nvme-y += core.o pci.o lightnvm.o
|
||||
nvme-$(CONFIG_BLK_DEV_NVME_SCSI) += scsi.o
|
||||
|
|
|
@ -467,10 +467,12 @@ static int nvme_ioctl(struct block_device *bdev, fmode_t mode,
|
|||
return nvme_user_cmd(ns->ctrl, ns, (void __user *)arg);
|
||||
case NVME_IOCTL_SUBMIT_IO:
|
||||
return nvme_submit_io(ns, (void __user *)arg);
|
||||
#ifdef CONFIG_BLK_DEV_NVME_SCSI
|
||||
case SG_GET_VERSION_NUM:
|
||||
return nvme_sg_get_version_num((void __user *)arg);
|
||||
case SG_IO:
|
||||
return nvme_sg_io(ns, (void __user *)arg);
|
||||
#endif
|
||||
default:
|
||||
return -ENOTTY;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue