[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v6 00/42] nvme: support NVMe v1.3d, SGLs and multiple namespaces

From: Klaus Jensen
Subject: [PATCH v6 00/42] nvme: support NVMe v1.3d, SGLs and multiple namespaces
Date: Mon, 16 Mar 2020 07:28:46 -0700

From: Klaus Jensen <address@hidden>


So this patchset kinda blew up in size (wrt. number of patches) after
Maxim's comments (26 -> 42), but Maxim's comments about splitting up a
bunch of the patches made a lot of sense.

v6 primarily splits up the big nasty patches into more digestible parts.
Specifically the 'nvme: refactor prp mapping' and 'nvme: allow multiple
aios per command' patches has been split up according to Maxim's
comments. Most additions to the shared include/block/nvme.h has also
been consolidated into a single patch (also according to Maxim's
comments). A lot of the patches still carries a 'Reviewed-By', but
git-backport-diff reports some changes due to changes/additions in some
of the early patches.

The only real "addition" is a new "max_ioqpairs" parameter for the
device. This is to fix some confusion about the current "num_queues"
parameter. See "nvme: add max_ioqpairs device parameter".

Maxim, I responded to your comments in the original thread and I believe
that all your comments has been adressed.

Also, I *did* change the line indentation style - I hope I caught 'em
all :)

Klaus Jensen (42):
  nvme: rename trace events to nvme_dev
  nvme: remove superfluous breaks
  nvme: move device parameters to separate struct
  nvme: bump spec data structures to v1.3
  nvme: use constant for identify data size
  nvme: add identify cns values in header
  nvme: refactor nvme_addr_read
  nvme: add support for the abort command
  nvme: add max_ioqpairs device parameter
  nvme: refactor device realization
  nvme: add temperature threshold feature
  nvme: add support for the get log page command
  nvme: add support for the asynchronous event request command
  nvme: add missing mandatory features
  nvme: additional tracing
  nvme: make sure ncqr and nsqr is valid
  nvme: add log specific field to trace events
  nvme: support identify namespace descriptor list
  nvme: enforce valid queue creation sequence
  nvme: provide the mandatory subnqn field
  nvme: bump supported version to v1.3
  nvme: memset preallocated requests structures
  nvme: add mapping helpers
  nvme: remove redundant has_sg member
  nvme: refactor dma read/write
  nvme: pass request along for tracing
  nvme: add request mapping helper
  nvme: verify validity of prp lists in the cmb
  nvme: refactor request bounds checking
  nvme: add check for mdts
  nvme: add check for prinfo
  nvme: allow multiple aios per command
  nvme: use preallocated qsg/iov in nvme_dma_prp
  pci: pass along the return value of dma_memory_rw
  nvme: handle dma errors
  nvme: add support for scatter gather lists
  nvme: refactor identify active namespace id list
  nvme: support multiple namespaces
  pci: allocate pci id for nvme
  nvme: change controller pci id
  nvme: remove redundant NvmeCmd pointer parameter
  nvme: make lba data size configurable

 MAINTAINERS            |    1 +
 block/nvme.c           |   18 +-
 docs/specs/nvme.txt    |   25 +
 docs/specs/pci-ids.txt |    1 +
 hw/block/Makefile.objs |    2 +-
 hw/block/nvme-ns.c     |  162 ++++
 hw/block/nvme-ns.h     |   62 ++
 hw/block/nvme.c        | 2041 ++++++++++++++++++++++++++++++++--------
 hw/block/nvme.h        |  205 +++-
 hw/block/trace-events  |  206 ++--
 hw/core/machine.c      |    1 +
 include/block/nvme.h   |  178 +++-
 include/hw/pci/pci.h   |    4 +-
 13 files changed, 2347 insertions(+), 559 deletions(-)
 create mode 100644 docs/specs/nvme.txt
 create mode 100644 hw/block/nvme-ns.c
 create mode 100644 hw/block/nvme-ns.h


reply via email to

[Prev in Thread] Current Thread [Next in Thread]