]> git.baikalelectronics.ru Git - kernel.git/commit
nvme-tcp: always fail a request when sending it failed
authorSagi Grimberg <sagi@grimberg.me>
Sun, 26 Jun 2022 09:24:51 +0000 (12:24 +0300)
committerChristoph Hellwig <hch@lst.de>
Wed, 29 Jun 2022 14:13:45 +0000 (16:13 +0200)
commit9a8d90423dce49a1cd26ce2f5f6287b0a1fb62ae
tree888073d35f1f919901025c01dde71a9fd99e371d
parent13103d5001201e380918ad5b739ae70783f0a9f0
nvme-tcp: always fail a request when sending it failed

queue stoppage and inflight requests cancellation is fully fenced from
io_work and thus failing a request from this context. Hence we don't
need to try to guess from the socket retcode if this failure is because
the queue is about to be torn down or not.

We are perfectly safe to just fail it, the request will not be cancelled
later on.

This solves possible very long shutdown delays when the users issues a
'nvme disconnect-all'

Reported-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/tcp.c