linux/drivers/nvme/host
Minwoo Im 2637baed78 nvme: introduce generic per-namespace chardev
Userspace has not been allowed to I/O to device that's failed to
be initialized.  This patch introduces generic per-namespace character
device to allow userspace to I/O regardless the block device is there or
not.

The chardev naming convention will similar to the existing blkdev naming,
using a ng prefix instead of nvme, i.e.

	- /dev/ngXnY

It also supports multipath which means it will not expose chardev for the
hidden namespace blkdevs (e.g., nvmeXcYnZ).  If /dev/ngXnY is created for
a ns_head, then I/O request will be routed to a specific controller
selected by the iopolicy of the subsystem.

Signed-off-by: Minwoo Im <minwoo.im.dev@gmail.com>
Signed-off-by: Javier González <javier.gonz@samsung.com>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Tested-by: Kanchan Joshi <joshi.k@samsung.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2021-04-22 07:25:17 +02:00
..
core.c nvme: introduce generic per-namespace chardev 2021-04-22 07:25:17 +02:00
fabrics.c nvme: sanitize KATO setting 2021-04-21 19:13:15 +02:00
fabrics.h nvme-fabrics: reject I/O to offline device 2020-12-01 20:36:37 +01:00
fault_inject.c
fc.c nvme-fc: check sgl supported by target 2021-04-02 18:48:29 +02:00
fc.h nvme-fc: Update header and host for common definitions for LS handling 2020-05-09 16:18:33 -06:00
hwmon.c nvme-hwmon: Return error code when registration fails 2021-03-05 13:41:03 +01:00
ioctl.c nvme: introduce generic per-namespace chardev 2021-04-22 07:25:17 +02:00
Kconfig nvme-tcp: fix kconfig dependency warning when !CRYPTO 2020-09-15 07:58:49 +02:00
lightnvm.c nvme: pass a user pointer to nvme_nvm_ioctl 2021-04-15 08:12:54 +02:00
Makefile nvme: move the ioctl code to a separate file 2021-04-15 08:12:55 +02:00
multipath.c nvme: introduce generic per-namespace chardev 2021-04-22 07:25:17 +02:00
nvme.h nvme: introduce generic per-namespace chardev 2021-04-22 07:25:17 +02:00
pci.c nvme-pci: remove single trailing whitespace 2021-04-15 08:12:54 +02:00
rdma.c nvme: use driver pdu command for passthrough 2021-04-02 18:48:27 +02:00
tcp.c nvme-tcp: check sgl supported by target 2021-04-02 18:48:28 +02:00
trace.c nvme: add tracing of zns commands 2021-02-02 10:26:12 +01:00
trace.h
zns.c nvme: let namespace probing continue for unsupported features 2021-04-15 08:12:56 +02:00