diff options
| author | Denis Lemire <denis@lemire.name> | 2026-10-29 06:14:18 +0000 |
|---|---|---|
| committer | Jaeyoon Choi <jaeyoon@FreeBSD.org> | 2026-10-30 03:12:43 +0000 |
| commit | 8721f68642c392afa0413eafa3cefde66d65b6eb (patch) | |
| tree | 981b2a0021a71783122e1c7b28b4796d9b37f355 /sys/modules/ispfw/isp_2700/(public-mirror) | |
| parent | 091492b83f8f96f9b9f700c1e9d40753243fb992 (diff) | |
The timeout in ufshci_sim_find_periph() is uint64_t, making the
comparison of timeout - ticks with zero always false. If the requested
peripheral does not become available, the lookup can wait indefinitely.
Use an sbintime_t deadline based on sbinuptime() and mstosbt(), and
compare the current uptime directly with the deadline. Preserve the
successful lookup path and existing timeout cleanup.
On an HP 15-fd0118ca with Intel N150 and Samsung UFS 3.1 storage, a
kernel built from stable/15 revision 84aa3cb3204d with this change
logged the missing-WLUN timeout, attached da0 and mounted root in two
boot trials.
Signed-off-by: Denis Lemire <denis@lemire.name>
Reviewed by: jaeyoon
Fixes: 31407551c3d4 ("ufshci: Add a check for WLUN during driver initialization")
MFC after: 3 days
Pull Request: https://github.com/freebsd/freebsd-src/pull/2520
Diffstat (limited to 'sys/modules/ispfw/isp_2700/(public-mirror)')
0 files changed, 0 insertions, 0 deletions
