mbox series

[GIT,PULL] first batch of nvme updates for 5.8

Message ID 20200508154448.GA250683@infradead.org (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] first batch of nvme updates for 5.8 | expand

Pull-request

git://git.infradead.org/nvme.git nvme-5.8

Message

Christoph Hellwig May 8, 2020, 3:44 p.m. UTC
Hi Jens,

here are the first 60+ nvme patches for Linux 5.8:

 - NVMe over Fibre Channel protocol updates, which also reach over to
   drivers/scsi/lpfc (James Smart)
 - namespace revalidation support on the target (Anthony Iliopoulos)
 - gcc zero length array fix (Arnd Bergmann)
 - nvmet cleanups (Chaitanya Kulkarni)
 - misc cleanups and fixes (me, Keith Busch, Sagi Grimberg)
 - use a SRQ per completion vector (Max Gurtovoy)
 - fix handling of runtime changes to the queue count (Weiping Zhang)


The following changes since commit 8b075e5ba459c7afdd7b2fde14cbc01c51e25eac:

  udf: stop using ioctl_by_bdev (2020-05-04 10:13:42 -0600)

are available in the Git repository at:

  git://git.infradead.org/nvme.git nvme-5.8

for you to fetch changes up to 8f17cfe04d1a0e8e9a5433bfa27b2db4856df9be:

  nvme: define constants for identification values (2020-05-06 08:54:46 +0200)

----------------------------------------------------------------
Anthony Iliopoulos (1):
      nvmet: add ns revalidation support

Arnd Bergmann (1):
      nvme-fc: avoid gcc-10 zero-length-bounds warning

Chaitanya Kulkarni (6):
      nvmet: add generic type-name mapping
      nvmet: use type-name map for address family
      nvmet: use type-name map for ana states
      nvmet: use type-name map for address treq
      nvmet: centralize port enable access for configfs
      nvmet: align addrfam list to spec

Christoph Hellwig (7):
      nvme: refine the Qemu Identify CNS quirk
      nvme: clean up nvme_scan_work
      nvme: factor out a nvme_ns_remove_by_nsid helper
      nvme: avoid an Identify Controller command for each namespace scan
      nvme: remove the magic 1024 constant in nvme_scan_ns_list
      nvme: clean up error handling in nvme_init_ns_head
      nvme-multipath: stop using ->queuedata

James Smart (27):
      nvme-fc: Sync header to FC-NVME-2 rev 1.08
      nvme-fc and nvmet-fc: revise LLDD api for LS reception and LS request
      nvme-fc nvmet-fc: refactor for common LS definitions
      nvmet-fc: Better size LS buffers
      nvme-fc: Ensure private pointers are NULL if no data
      nvme-fc: convert assoc_active flag to bit op
      nvme-fc: Update header and host for common definitions for LS handling
      nvmet-fc: Update target for common definitions for LS handling
      nvme-fc: Add Disconnect Association Rcv support
      nvmet-fc: add LS failure messages
      nvmet-fc: perform small cleanups on unneeded checks
      nvmet-fc: track hostport handle for associations
      nvmet-fc: rename ls_list to ls_rcv_list
      nvmet-fc: Add Disconnect Association Xmt support
      nvme-fcloop: refactor to enable target to host LS
      nvme-fcloop: add target to host LS request support
      lpfc: Refactor lpfc nvme headers
      lpfc: Refactor nvmet_rcv_ctx to create lpfc_async_xchg_ctx
      lpfc: Commonize lpfc_async_xchg_ctx state and flag definitions
      lpfc: Refactor NVME LS receive handling
      lpfc: Refactor Send LS Request support
      lpfc: Refactor Send LS Abort support
      lpfc: Refactor Send LS Response support
      lpfc: nvme: Add Receive LS Request and Send LS Response support to nvme
      lpfc: nvmet: Add support for NVME LS request hosthandle
      lpfc: nvmet: Add Send LS Request and Abort LS Request support
      nvmet-fc: slight cleanup for kbuild test warnings

Keith Busch (15):
      nvme: provide num dword helper
      nvme: remove unused parameter
      nvme: unlink head after removing last namespace
      nvme: release namespace head reference on error
      nvme: always search for namespace head
      nvme: check namespace head shared property
      nvme-multipath: set bdi capabilities once
      nvme: revalidate after verifying identifiers
      nvme: consolidate chunk_sectors settings
      nvme: revalidate namespace stream parameters
      nvme: consolodate io settings
      nvme: flush scan work on passthrough commands
      nvme-pci: remove volatile cqes
      nvme-pci: remove last_sq_tail
      nvme: define constants for identification values

Max Gurtovoy (1):
      nvmet-rdma: use SRQ per completion vector

Sagi Grimberg (3):
      nvme-tcp: use bh_lock in data_ready
      nvme-tcp: avoid scheduling io_work if we are already polling
      nvme-tcp: try to send request in queue_rq context

Weiping Zhang (1):
      nvme-pci: align io queue count with allocted nvme_queue in nvme_probe

 drivers/nvme/host/core.c           | 235 ++++++-----
 drivers/nvme/host/fc.c             | 571 ++++++++++++++++++++------
 drivers/nvme/host/fc.h             | 227 +++++++++++
 drivers/nvme/host/multipath.c      |  16 +-
 drivers/nvme/host/nvme.h           |  10 +-
 drivers/nvme/host/pci.c            |  89 ++--
 drivers/nvme/host/tcp.c            |  53 ++-
 drivers/nvme/target/admin-cmd.c    |   5 +
 drivers/nvme/target/configfs.c     | 184 ++++-----
 drivers/nvme/target/fc.c           | 805 +++++++++++++++++++++++++++----------
 drivers/nvme/target/fcloop.c       | 155 ++++++-
 drivers/nvme/target/io-cmd-bdev.c  |   5 +
 drivers/nvme/target/io-cmd-file.c  |  17 +-
 drivers/nvme/target/nvmet.h        |   2 +
 drivers/nvme/target/rdma.c         | 178 ++++++--
 drivers/scsi/lpfc/lpfc.h           |   2 +-
 drivers/scsi/lpfc/lpfc_attr.c      |   3 -
 drivers/scsi/lpfc/lpfc_crtn.h      |   9 +-
 drivers/scsi/lpfc/lpfc_ct.c        |   1 -
 drivers/scsi/lpfc/lpfc_debugfs.c   |   5 +-
 drivers/scsi/lpfc/lpfc_hbadisc.c   |   8 +-
 drivers/scsi/lpfc/lpfc_init.c      |   7 +-
 drivers/scsi/lpfc/lpfc_mem.c       |   4 -
 drivers/scsi/lpfc/lpfc_nportdisc.c |  13 +-
 drivers/scsi/lpfc/lpfc_nvme.c      | 491 ++++++++++++++--------
 drivers/scsi/lpfc/lpfc_nvme.h      | 180 +++++++++
 drivers/scsi/lpfc/lpfc_nvmet.c     | 804 +++++++++++++++++++++---------------
 drivers/scsi/lpfc/lpfc_nvmet.h     | 158 --------
 drivers/scsi/lpfc/lpfc_sli.c       | 126 +++++-
 include/linux/nvme-fc-driver.h     | 368 ++++++++++++-----
 include/linux/nvme-fc.h            |  11 +-
 include/linux/nvme.h               |   8 +
 32 files changed, 3297 insertions(+), 1453 deletions(-)
 create mode 100644 drivers/nvme/host/fc.h
 delete mode 100644 drivers/scsi/lpfc/lpfc_nvmet.h

Comments

Jens Axboe May 8, 2020, 3:51 p.m. UTC | #1
On 5/8/20 9:44 AM, Christoph Hellwig wrote:
> Hi Jens,
> 
> here are the first 60+ nvme patches for Linux 5.8:
> 
>  - NVMe over Fibre Channel protocol updates, which also reach over to
>    drivers/scsi/lpfc (James Smart)
>  - namespace revalidation support on the target (Anthony Iliopoulos)
>  - gcc zero length array fix (Arnd Bergmann)
>  - nvmet cleanups (Chaitanya Kulkarni)
>  - misc cleanups and fixes (me, Keith Busch, Sagi Grimberg)
>  - use a SRQ per completion vector (Max Gurtovoy)
>  - fix handling of runtime changes to the queue count (Weiping Zhang)

Pulled, thanks.