DF-5323
Second M_WAITOK-sleep-reachable-inside-critical-section site: fw_bus_probe() holds crit_enter() across fw_bus_explore()'s device kmalloc(M_WAITOK|M_ZERO) (distinct from known DF-1021/fw_get_tlabel)
Summary
fw_bus_probe wraps the whole exploration in crit_enter and fw_bus_explore kmallocs a new fw_device with M_WAITOK when a fresh EUI64 answers - same class as DF-1021 but a call site its fix would not cover; scheduler/livelock hazard under memory pressure on real hardware. Hardware+pressure-gated. M_INTWAIT-or-move-out-of-crit fix.
Discussion (0)
PoC verification
Evidence pack
findings/poc/DF-5323 Β· 1 files| File | Type | Description | Size | |
|---|---|---|---|---|
| verdict.json | file | 963 B | view raw |
Fix verification
not_testablebaseline noβ patch + rebuild βpatched clean
per-fix-DF-5323
Confirmed kernel references
Detail
Evidence (decisive lines)
static chain firewire.c:1239 crit -> :1311 M_WAITOK
Verified recommended fix
M_INTWAIT or move the allocation out of the crit section
Verdict
untested (Low; hardware- and memory-pressure-gated)
No comments yet.