[PATCH v2] nvme: reduce firmware activation poll interval
guzebing
guzebing1612 at gmail.com
Tue Jul 14 02:28:46 PDT 2026
From: Guzebing <guzebing at bytedance.com>
nvme_fw_act_work() polls the controller processing-paused status every
100 ms while firmware activation is pending. Some devices can complete
online activation in only a few hundred milliseconds, so the fixed
100 ms interval can add up to 100 ms of latency before the driver
observes completion.
Poll every 1 to 2 ms instead. The shorter interval reduces the delay
before the driver observes completion and allows the timeout check to
track the MTFA boundary more closely.
Signed-off-by: Guzebing <guzebing at bytedance.com>
---
Changes in v2:
- Drop the module parameter and use a fixed 1 to 2 ms poll interval.
v1: https://lore.kernel.org/linux-nvme/20260627010610.47768-1-guzebing1612@gmail.com/
drivers/nvme/host/core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 453c1f0b2dd09..c226baf8641a5 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -4813,7 +4813,7 @@ static void nvme_fw_act_work(struct work_struct *work)
nvme_try_sched_reset(ctrl);
return;
}
- msleep(100);
+ usleep_range(1000, 2000);
}
if (!nvme_change_ctrl_state(ctrl, NVME_CTRL_CONNECTING) ||
--
2.20.1
More information about the Linux-nvme
mailing list