b61775d185
Implement Diffie-Hellman key exchange using FFDHE groups for NVMe In-Band Authentication. Signed-off-by: Hannes Reinecke <hare@suse.de> Reviewed-by: Sagi Grimberg <sagi@grimberg.me> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
122 lines
3.5 KiB
Plaintext
122 lines
3.5 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config NVME_CORE
|
|
tristate
|
|
select BLK_DEV_INTEGRITY_T10 if BLK_DEV_INTEGRITY
|
|
|
|
config BLK_DEV_NVME
|
|
tristate "NVM Express block device"
|
|
depends on PCI && BLOCK
|
|
select NVME_CORE
|
|
help
|
|
The NVM Express driver is for solid state drives directly
|
|
connected to the PCI or PCI Express bus. If you know you
|
|
don't have one of these, it is safe to answer N.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called nvme.
|
|
|
|
config NVME_MULTIPATH
|
|
bool "NVMe multipath support"
|
|
depends on NVME_CORE
|
|
help
|
|
This option enables support for multipath access to NVMe
|
|
subsystems. If this option is enabled only a single
|
|
/dev/nvmeXnY device will show up for each NVMe namespace,
|
|
even if it is accessible through multiple controllers.
|
|
|
|
config NVME_VERBOSE_ERRORS
|
|
bool "NVMe verbose error reporting"
|
|
depends on NVME_CORE
|
|
help
|
|
This option enables verbose reporting for NVMe errors. The
|
|
error translation table will grow the kernel image size by
|
|
about 4 KB.
|
|
|
|
config NVME_HWMON
|
|
bool "NVMe hardware monitoring"
|
|
depends on (NVME_CORE=y && HWMON=y) || (NVME_CORE=m && HWMON)
|
|
help
|
|
This provides support for NVMe hardware monitoring. If enabled,
|
|
a hardware monitoring device will be created for each NVMe drive
|
|
in the system.
|
|
|
|
config NVME_FABRICS
|
|
select NVME_CORE
|
|
tristate
|
|
|
|
config NVME_RDMA
|
|
tristate "NVM Express over Fabrics RDMA host driver"
|
|
depends on INFINIBAND && INFINIBAND_ADDR_TRANS && BLOCK
|
|
select NVME_FABRICS
|
|
select SG_POOL
|
|
help
|
|
This provides support for the NVMe over Fabrics protocol using
|
|
the RDMA (Infiniband, RoCE, iWarp) transport. This allows you
|
|
to use remote block devices exported using the NVMe protocol set.
|
|
|
|
To configure a NVMe over Fabrics controller use the nvme-cli tool
|
|
from https://github.com/linux-nvme/nvme-cli.
|
|
|
|
If unsure, say N.
|
|
|
|
config NVME_FC
|
|
tristate "NVM Express over Fabrics FC host driver"
|
|
depends on BLOCK
|
|
depends on HAS_DMA
|
|
select NVME_FABRICS
|
|
select SG_POOL
|
|
help
|
|
This provides support for the NVMe over Fabrics protocol using
|
|
the FC transport. This allows you to use remote block devices
|
|
exported using the NVMe protocol set.
|
|
|
|
To configure a NVMe over Fabrics controller use the nvme-cli tool
|
|
from https://github.com/linux-nvme/nvme-cli.
|
|
|
|
If unsure, say N.
|
|
|
|
config NVME_TCP
|
|
tristate "NVM Express over Fabrics TCP host driver"
|
|
depends on INET
|
|
depends on BLOCK
|
|
select NVME_FABRICS
|
|
select CRYPTO
|
|
select CRYPTO_CRC32C
|
|
help
|
|
This provides support for the NVMe over Fabrics protocol using
|
|
the TCP transport. This allows you to use remote block devices
|
|
exported using the NVMe protocol set.
|
|
|
|
To configure a NVMe over Fabrics controller use the nvme-cli tool
|
|
from https://github.com/linux-nvme/nvme-cli.
|
|
|
|
If unsure, say N.
|
|
|
|
config NVME_AUTH
|
|
bool "NVM Express over Fabrics In-Band Authentication"
|
|
depends on NVME_CORE
|
|
select NVME_COMMON
|
|
select CRYPTO
|
|
select CRYPTO_HMAC
|
|
select CRYPTO_SHA256
|
|
select CRYPTO_SHA512
|
|
select CRYPTO_DH
|
|
select CRYPTO_DH_RFC7919_GROUPS
|
|
help
|
|
This provides support for NVMe over Fabrics In-Band Authentication.
|
|
|
|
If unsure, say N.
|
|
|
|
config NVME_APPLE
|
|
tristate "Apple ANS2 NVM Express host driver"
|
|
depends on OF && BLOCK
|
|
depends on APPLE_RTKIT && APPLE_SART
|
|
depends on ARCH_APPLE || COMPILE_TEST
|
|
select NVME_CORE
|
|
help
|
|
This provides support for the NVMe controller embedded in Apple SoCs
|
|
such as the M1.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called nvme-apple.
|