git: 4982884b99e8 - main - nvme: Always set deadline to max

From: Warner Losh <imp_at_FreeBSD.org>
Date: Tue, 11 Oct 2022 18:57:30 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=4982884b99e894ea21a35d2599791f5d98e5785e

commit 4982884b99e894ea21a35d2599791f5d98e5785e
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2022-10-11 18:51:32 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2022-10-11 18:51:32 +0000

    nvme: Always set deadline to max
    
    When a transaction is on the outstanding list, it needs to have a valid
    timeout value, so set it to infinity before placing it on the
    list. Place before we put it on the list, even though the list is
    protected by the qpair lock.
    
    Sponsored by:           Netflix
    Reviewed by:            mav
    Differential Revision:  https://reviews.freebsd.org/D36920
---
 sys/dev/nvme/nvme_qpair.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/sys/dev/nvme/nvme_qpair.c b/sys/dev/nvme/nvme_qpair.c
index e0b3517529d5..b81f4c4bc3c9 100644
--- a/sys/dev/nvme/nvme_qpair.c
+++ b/sys/dev/nvme/nvme_qpair.c
@@ -1175,8 +1175,7 @@ _nvme_qpair_submit_request(struct nvme_qpair *qpair, struct nvme_request *req)
 
 	TAILQ_REMOVE(&qpair->free_tr, tr, tailq);
 	TAILQ_INSERT_TAIL(&qpair->outstanding_tr, tr, tailq);
-	if (!qpair->timer_armed)
-		tr->deadline = SBT_MAX;
+	tr->deadline = SBT_MAX;
 	tr->req = req;
 
 	switch (req->type) {