nvme updates for Linux 6.16

- add per-node DMA pools and use them for PRP/SGL allocations
    (Caleb Sander Mateos, Keith Busch)
  - nvme-fcloop refcounting fixes (Daniel Wagner)
  - support delayed removal of the multipath node and optionally support
    the multipath node for private namespaces (Nilay Shroff)
  - support shared CQs in the PCI endpoint target code (Wilfred Mallawa)
  - support admin-queue only authentication (Hannes Reinecke)
  - use the crc32c library instead of the crypto API (Eric Biggers)
  - misc cleanups (Christoph Hellwig, Marcelo Moreira, Hannes Reinecke,
    Leon Romanovsky, Gustavo A. R. Silva)
 -----BEGIN PGP SIGNATURE-----
 
 iQI/BAABCgApFiEEgdbnc3r/njty3Iq9D55TZVIEUYMFAmgspvwLHGhjaEBsc3Qu
 ZGUACgkQD55TZVIEUYNGsQ/9FLj/9fc2w2HNth7DZ9zN+OQreft3aVVQL1T692mi
 2/VRsWIJAoy55GDcRE7msgOAM/LDEOkG09o08YCtDbXxA7S3Nj8QMv3LQmLxeG5f
 0xiP8udVYyeTWinhgXj41oHwMm7ApngIqMtIKyzhAmL3IAu5Yw9brGroik8zqe9/
 HZAgcm7cpO9XufA16weEbsAnHP1Iw7pUiVWc8cTZz4AhbhBmIy/qr8gRB+kI1S0H
 iCZhIEatgRQiERFcF2TFertWUKGs2HRU3qNz0tMRfhGalE6uZOImaURgCWclrEG3
 SBli/EGDnFYjDJnqmAadSd4YAfZP/cFMR2Fe0/kXlSMGAqg8Fu2UXZsFEKtpSjPh
 FanUNO0OiXpPtUtiK39qCLfXjTWNABgwnAQYVElKt3M0PkRUCFwF+g4miVyIXk4p
 p9FEjPz2jdw9zpgPyJ3xJg+mvEIghZjA/1DrXyrBRBXtZSZeSoGnHJaghv8xdzoI
 Ea2Y3Vd0SeGd71QN6vnUvj6TpAnyyXltBg2VP9ls6R89PzTBL0UKjCUooA/WadAo
 YtALVHQaLkrGLwDMwQA0Z+CD4Z9wVGE0AqkMXoElUVBjzwRN3XP7xUsAYVu52Ygk
 RfOD3lJMUbYm18HqvN1/MDKZ/yKnlesEAV51O7rpYKZUrnN5BPbheFRMz9HW4BsY
 bo0=
 =jduE
 -----END PGP SIGNATURE-----

Merge tag 'nvme-6.16-2025-05-20' of git://git.infradead.org/nvme into for-6.16/block

Pull NVMe updates from Christoph:

"nvme updates for Linux 6.16

 - add per-node DMA pools and use them for PRP/SGL allocations
   (Caleb Sander Mateos, Keith Busch)
 - nvme-fcloop refcounting fixes (Daniel Wagner)
 - support delayed removal of the multipath node and optionally support
   the multipath node for private namespaces (Nilay Shroff)
 - support shared CQs in the PCI endpoint target code (Wilfred Mallawa)
 - support admin-queue only authentication (Hannes Reinecke)
 - use the crc32c library instead of the crypto API (Eric Biggers)
 - misc cleanups (Christoph Hellwig, Marcelo Moreira, Hannes Reinecke,
   Leon Romanovsky, Gustavo A. R. Silva)"

* tag 'nvme-6.16-2025-05-20' of git://git.infradead.org/nvme: (42 commits)
  nvme: rename nvme_mpath_shutdown_disk to nvme_mpath_remove_disk
  nvme: introduce multipath_always_on module param
  nvme-multipath: introduce delayed removal of the multipath head node
  nvme-pci: derive and better document max segments limits
  nvme-pci: use struct_size for allocation struct nvme_dev
  nvme-pci: add a symolic name for the small pool size
  nvme-pci: use a better encoding for small prp pool allocations
  nvme-pci: rename the descriptor pools
  nvme-pci: remove struct nvme_descriptor
  nvme-pci: store aborted state in flags variable
  nvme-pci: don't try to use SGLs for metadata on the admin queue
  nvme-pci: make PRP list DMA pools per-NUMA-node
  nvme-pci: factor out a nvme_init_hctx_common() helper
  dmapool: add NUMA affinity support
  nvme-fc: do not reference lsrsp after failure
  nvmet-fcloop: don't wait for lport cleanup
  nvmet-fcloop: add missing fcloop_callback_host_done
  nvmet-fc: take tgtport refs for portentry
  nvmet-fc: free pending reqs on tgtport unregister
  nvmet-fcloop: drop response if targetport is gone
  ...
This commit is contained in:
Jens Axboe 2025-05-20 10:13:53 -06:00
commit 39eb810157
23 changed files with 1001 additions and 526 deletions