diff options
author | Jens Axboe <axboe@kernel.dk> | 2022-08-11 08:37:48 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2022-08-11 08:37:48 -0600 |
commit | cd83cd55878409299f4614c5138d24dffacc39bd (patch) | |
tree | 0eb1a273847bc65799be911765ae3c0713d3ec83 /drivers/nvme/host/tcp.c | |
parent | fa9db655d0e112c108fe838809608caf759bdf5e (diff) | |
parent | f37527a09dac324c74bb341c841096395a2f2566 (diff) |
Merge tag 'nvme-6.0-2022-08-11' of git://git.infradead.org/nvme into block-6.0
Pull NVMe fixes from Christoph:
"nvme fixes for Linux 6.0
- print nvme connect Linux error codes properly (Amit Engel)
- fix the fc_appid_store return value (Christoph Hellwig)
- fix a typo in an error message (Christophe JAILLET)
- add another non-unique identifier quirk (Dennis P. Kliem)
- check if the queue is allocated before stopping it in nvme-tcp
(Maurizio Lombardi)
- restart admin queue if the caller needs to restart queue in nvme-fc
(Ming Lei)
- use kmemdup instead of kmalloc + memcpy in nvme-auth (Zhang Xiaoxu)"
* tag 'nvme-6.0-2022-08-11' of git://git.infradead.org/nvme:
nvme-pci: add NVME_QUIRK_BOGUS_NID for ADATA XPG GAMMIX S70
nvme-tcp: check if the queue is allocated before stopping it
nvme-fabrics: Fix a typo in an error message
nvme-fabrics: parse nvme connect Linux error codes
nvmet-auth: use kmemdup instead of kmalloc + memcpy
nvme-fc: fix the fc_appid_store return value
nvme-fc: restart admin queue if the caller needs to restart queue
Diffstat (limited to 'drivers/nvme/host/tcp.c')
-rw-r--r-- | drivers/nvme/host/tcp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/nvme/host/tcp.c b/drivers/nvme/host/tcp.c index e82dcfcda29b..044da18c06f5 100644 --- a/drivers/nvme/host/tcp.c +++ b/drivers/nvme/host/tcp.c @@ -1660,6 +1660,9 @@ static void nvme_tcp_stop_queue(struct nvme_ctrl *nctrl, int qid) struct nvme_tcp_ctrl *ctrl = to_tcp_ctrl(nctrl); struct nvme_tcp_queue *queue = &ctrl->queues[qid]; + if (!test_bit(NVME_TCP_Q_ALLOCATED, &queue->flags)) + return; + mutex_lock(&queue->queue_lock); if (test_and_clear_bit(NVME_TCP_Q_LIVE, &queue->flags)) __nvme_tcp_stop_queue(queue); |