drivers/nvme/target/Kconfig

Source file repositories/reference/linux-study-clean/drivers/nvme/target/Kconfig

File Facts

System
Linux kernel
Corpus path
drivers/nvme/target/Kconfig
Extension
[no extension]
Size
3931 bytes
Lines
139
Domain
Representative Device Path
Bucket
PCIe NVMe Storage Path
Inferred role
Representative Device Path: build/configuration rule
Status
atlas-only

Why This File Exists

Part of the selected hardware vertical slice: PCI discovery, driver binding, NVMe queues, block requests, DMA, interrupts, and completion.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only

config NVME_TARGET
	tristate "NVMe Target support"
	depends on BLOCK
	select CONFIGFS_FS
	select NVME_KEYRING if NVME_TARGET_TCP_TLS
	select KEYS if NVME_TARGET_TCP_TLS
	select SGL_ALLOC
	help
	  This enabled target side support for the NVMe protocol, that is
	  it allows the Linux kernel to implement NVMe subsystems and
	  controllers and export Linux block devices as NVMe namespaces.
	  You need to select at least one of the transports below to make this
	  functionality useful.

	  To configure the NVMe target you probably want to use the nvmetcli
	  tool from http://git.infradead.org/users/hch/nvmetcli.git.

config NVME_TARGET_DEBUGFS
        bool "NVMe Target debugfs support"
	depends on NVME_TARGET
	help
	  This enables debugfs support to display the connected controllers
	  to each subsystem

	  If unsure, say N.

config NVME_TARGET_PASSTHRU
	bool "NVMe Target Passthrough support"
	depends on NVME_TARGET
	depends on NVME_CORE=y || NVME_CORE=NVME_TARGET
	help
	  This enables target side NVMe passthru controller support for the
	  NVMe Over Fabrics protocol. It allows for hosts to manage and
	  directly access an actual NVMe controller residing on the target
	  side, including executing Vendor Unique Commands.

	  If unsure, say N.

config NVME_TARGET_LOOP
	tristate "NVMe loopback device support"
	depends on NVME_TARGET
	select NVME_FABRICS
	select SG_POOL
	help
	  This enables the NVMe loopback device support, which can be useful
	  to test NVMe host and target side features.

	  If unsure, say N.

config NVME_TARGET_RDMA
	tristate "NVMe over Fabrics RDMA target support"
	depends on INFINIBAND && INFINIBAND_ADDR_TRANS
	depends on NVME_TARGET
	select SGL_ALLOC
	help
	  This enables the NVMe RDMA target support, which allows exporting NVMe
	  devices over RDMA.

	  If unsure, say N.

config NVME_TARGET_FC
	tristate "NVMe over Fabrics FC target driver"
	depends on NVME_TARGET
	depends on HAS_DMA
	select SGL_ALLOC
	help
	  This enables the NVMe FC target support, which allows exporting NVMe
	  devices over FC.

Annotation

Implementation Notes