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
This commit is contained in:
Warner Losh 2022-10-11 12:51:32 -06:00
parent f4f6bc6367
commit 4982884b99

View file

@ -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) {