[GIT PULL] nvme updates for Linux 7.4
Keith Busch
kbusch at kernel.org
Thu Oct 29 07:34:29 PDT 2026
The following changes since commit 40d070cbb1906896d6fd65c39722d2411830ed9f:
block: restore the iterator when rejecting a misaligned bio (2026-10-20 11:11:45 -0600)
are available in the Git repository at:
git://git.infradead.org/nvme.git tags/nvme-7.4-2026-10-28
for you to fetch changes up to 89480d137bf0d943a82c64f86ae2407a15276b5e:
nvmet: don't clear sq->ctrl for a Connect with sqsize 0 (2026-10-28 11:41:43 -0700)
----------------------------------------------------------------
nvme updates for Linux 7.4
- Fix regressions from the parallel nvme-tcp I/O queue setup: request
PDU sizing with header digest, a NULL controller dereference when
reconnecting with more queues, and early lock initialization
- Handle TLS control records in nvme-tcp: skip records arriving ahead
of the ICResp, and start error recovery when the socket read fails
- Fix an nvme-tcp io_work priority inversion stalling I/O
- Fix nvme-tcp address attribute race with queue teardown
- Validate the TLS handshake timeout parameters for host and target
- Fix fabrics connects with isolated CPUs and queue mapping bugs
- Fix early boot hang and buffer size for the nvme.quirks parameter
- Fix nvme-rdma NULL metadata SGL dereference with T10-PI
- Fix ANA underflow check and an nvme-fc discovery reference leak
- Fix nvme-loop BUG() when a namespace scan races a reset
- Target port and configfs locking fixes, and port removal races
- Target auth fixes for CHALLENGE failure and negotiation handling
- Target fc fixes for a connection use-after-free, read data on failed
commands, and admin queue allocation failure teardown
- Target rdma fix for short connection requests
- Target rdma fix for inline SGL out-of-bounds write
- Target rdma refcount, locking, and module unload fixes
- Target pci-epf SGL length and error status fixes
- Target NULL dereference fixes for pci-epf and debugfs
- Target ZNS NUMD overflow check
- Target Connect fix for a controller leak with a zero queue size
- Target fixes for a metadata SGL double-free and a leaked blk plug
- Target fix for truncated large discards
- Misc cleanups
----------------------------------------------------------------
Andrea Parri (4):
nvmet-fc: only send read data for successful commands
nvmet: zns: reject a NUMD whose byte count wraps
nvmet: pci-epf: report transport errors in command completions
nvmet: pci-epf: require SGLs to match the command data length
Andrew Stellman (1):
nvmet-rdma: fix out-of-bounds write in nvmet_rdma_map_sgl_inline()
Avi Weiss (1):
nvmet: prevent double-free after metadata SGL allocation failure
Chris Mason (4):
nvmet-rdma: flush nvmet-wq on module exit
nvmet-rdma: disable interrupts under rsp_wr_wait_lock
nvmet-rdma: fix double puts after a failed RDMA WRITE
nvmet: don't clear sq->ctrl for a Connect with sqsize 0
Christian Aurich Zanettini Martins (3):
nvme-rdma: fix NULL metadata_sgl dereference with T10-PI
nvme-tcp: fix request PDU size when header digest is enabled
nvme-tcp: fix NULL queue->ctrl dereference on reconnect
Daniel Wagner (4):
nvme-tcp: initialize pf_cache_lock when allocating the controller
nvme-fabrics: reset io_queues before computing the queue mapping
nvme-fabrics: limit each queue type to the number of online CPUs
nvme-fabrics: clear the poll map if no poll queues are mapped
Guixin Liu (4):
nvmet-fc: Tear down the association when the admin queue allocation fails
nvme-tcp: Validate the queue state under the queue lock in the address attribute
nvmet: Finish the blk plug when integrity allocation fails
nvmet: Free the old negotiation state when restarting authentication
Josef Bacik (7):
nvmet: don't truncate the length of big discards
nvmet-auth: take only AUTH_Negotiate for a negotiation
nvmet: fix NULL dereference of PCI endpoint targets
nvmet-tcp: stop listening when a port is removed
nvmet: fix NULL dereference in debugfs host_traddr
nvmet-tcp: don't read a removed port at Connect time
nvme-loop: don't BUG() if a scan runs beside a reset
Martin Belanger (2):
nvme-tcp: start error recovery when read_sock fails
nvme-tcp: skip TLS control records while waiting for the ICResp
Martin George (3):
nvme-auth: update error log in nvme_auth_submit()
nvme-multipath: avoid size_t underflow in ANA log bounds checks
nvme-fc: fix reference leak in nvme_fc_nvme_discovery_store()
Maurizio Lombardi (2):
nvme-pci: fix early boot hang with nvme.quirks parameter
nvme-pci: increase quirks_param buffer size to 256 bytes
Qing Zhang (1):
nvmet: protect nvmet_ports_list with nvmet_config_sem
Rongzheng Wang (1):
nvmet: use the enabled transport when disabling a port
Seiji Nishikawa (1):
nvme-tcp: fix io_work priority inversion when send_mutex is held
Shao Mingyin (1):
nvmet-auth: fix error handling on CHALLENGE failure
Weiming Shi (1):
nvmet-rdma: reject short connection requests
Yehyeong Lee (1):
nvmet-fc: fix use-after-free in nvmet_fc_ls_create_connection()
Yingjie Wang (2):
nvmet-tcp: validate the TLS handshake timeout
nvme-tcp: validate the TLS handshake timeout
Yu Zhang (1):
nvmet: take subsys->lock while force-reconnecting in nvmet_subsys_attr_qid_max_store()
Documentation/admin-guide/kernel-parameters.txt | 10 +
drivers/nvme/host/auth.c | 6 +-
drivers/nvme/host/fabrics.c | 30 ++-
drivers/nvme/host/fc.c | 7 +-
drivers/nvme/host/multipath.c | 4 +-
drivers/nvme/host/pci.c | 4 +-
drivers/nvme/host/rdma.c | 2 +-
drivers/nvme/host/tcp.c | 309 +++++++++++++++++++-----
drivers/nvme/target/auth.c | 1 +
drivers/nvme/target/configfs.c | 26 +-
drivers/nvme/target/core.c | 16 +-
drivers/nvme/target/fabrics-cmd-auth.c | 11 +-
drivers/nvme/target/fabrics-cmd.c | 3 +-
drivers/nvme/target/fc.c | 18 +-
drivers/nvme/target/io-cmd-bdev.c | 8 +-
drivers/nvme/target/loop.c | 2 -
drivers/nvme/target/nvmet.h | 3 +-
drivers/nvme/target/pci-epf.c | 30 ++-
drivers/nvme/target/rdma.c | 31 ++-
drivers/nvme/target/tcp.c | 33 ++-
drivers/nvme/target/zns.c | 12 +-
21 files changed, 436 insertions(+), 130 deletions(-)
More information about the Linux-nvme
mailing list