WSL2-Linux-Kernel/drivers/nvme/target
Israel Rukshin 9ceb786353 nvmet-rdma: Fix list_del corruption on queue establishment failure
When a queue is in NVMET_RDMA_Q_CONNECTING state, it may has some
requests at rsp_wait_list. In case a disconnect occurs at this
state, no one will empty this list and will return the requests to
free_rsps list. Normally nvmet_rdma_queue_established() free those
requests after moving the queue to NVMET_RDMA_Q_LIVE state, but in
this case __nvmet_rdma_queue_disconnect() is called before. The
crash happens at nvmet_rdma_free_rsps() when calling
list_del(&rsp->free_list), because the request exists only at
the wait list. To fix the issue, simply clear rsp_wait_list when
destroying the queue.

Signed-off-by: Israel Rukshin <israelr@nvidia.com>
Reviewed-by: Max Gurtovoy <mgurtovoy@nvidia.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2021-01-06 10:30:37 +01:00
..
Kconfig nvmet: fix a spelling mistake "incuding" -> "including" in Kconfig 2020-12-01 20:36:37 +01:00
Makefile nvmet: add passthru code to process commands 2020-07-29 07:45:21 +02:00
admin-cmd.c block: switch partition lookup to use struct block_device 2020-12-01 14:53:40 -07:00
configfs.c nvmet: add passthru io timeout value attr 2020-12-01 20:36:35 +01:00
core.c nvmet: remove unused ctrl->cqs 2020-12-01 20:36:36 +01:00
discovery.c nvmet: make sure discovery change log event is protected 2020-12-01 20:36:37 +01:00
fabrics-cmd.c nvmet: add metadata/T10-PI support 2020-05-27 07:12:40 +02:00
fc.c nvmet-fc: fix missing check for no hostport struct 2020-09-27 09:14:19 +02:00
fcloop.c nvme-fcloop: Fix sscanf type and list_first_entry_or_null warnings 2021-01-06 10:30:36 +01:00
io-cmd-bdev.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
io-cmd-file.c nvmet: rename nvmet_check_data_len to nvmet_check_transfer_len 2020-05-27 07:12:39 +02:00
loop.c for-5.11/drivers-2020-12-14 2020-12-16 13:09:32 -08:00
nvmet.h nvmet: remove unused ctrl->cqs 2020-12-01 20:36:36 +01:00
passthru.c nvmet: use inline bio for passthru fast path 2020-12-01 20:36:36 +01:00
rdma.c nvmet-rdma: Fix list_del corruption on queue establishment failure 2021-01-06 10:30:37 +01:00
tcp.c nvmet-tcp: have queue io_work context run on sock incoming cpu 2020-09-27 09:14:18 +02:00
trace.c nvmet: trace: parse Get LBA Status command in detail 2019-08-29 12:55:01 -07:00
trace.h nvmet: fix a NULL pointer dereference when tracing the flush command 2020-10-27 10:02:50 +01:00