mirror of
https://github.com/opnsense/src.git
synced 2026-06-09 08:43:19 -04:00
Use callout_reset_curcpu to allow the callout to be handled by the
current CPU and not always CPU 0. This has the added benefit of reducing a huge amount of spinlock contention on the callout_cpu spinlock for CPU 0. Sponsored by: Intel
This commit is contained in:
parent
3049555773
commit
633c572996
1 changed files with 5 additions and 0 deletions
|
|
@ -390,7 +390,12 @@ nvme_qpair_submit_cmd(struct nvme_qpair *qpair, struct nvme_tracker *tr)
|
|||
req->cmd.cid = tr->cid;
|
||||
qpair->act_tr[tr->cid] = tr;
|
||||
|
||||
#if __FreeBSD_version >= 800030
|
||||
callout_reset_curcpu(&tr->timer, NVME_TIMEOUT_IN_SEC * hz,
|
||||
nvme_timeout, tr);
|
||||
#else
|
||||
callout_reset(&tr->timer, NVME_TIMEOUT_IN_SEC * hz, nvme_timeout, tr);
|
||||
#endif
|
||||
|
||||
/* Copy the command from the tracker to the submission queue. */
|
||||
memcpy(&qpair->cmd[qpair->sq_tail], &req->cmd, sizeof(req->cmd));
|
||||
|
|
|
|||
Loading…
Reference in a new issue