summaryrefslogtreecommitdiffstats
path: root/wiki/open-iov.org/index.php/File:Intel_GVT-g_Capabilities.png.html
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-23 16:24:50 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-23 16:24:50 -0400
commit8cbb6003478d3a8ba1ee063dd1d207e252076a5d (patch)
tree306a61dca6e46746655d98f5e3038ff49f3d1ff4 /wiki/open-iov.org/index.php/File:Intel_GVT-g_Capabilities.png.html
parentcc60d6dcce1c6ee956c43a5c6d2bb639660ac5ec (diff)
downloadopen-iov-8cbb6003478d3a8ba1ee063dd1d207e252076a5d.tar.gz
open-iov-8cbb6003478d3a8ba1ee063dd1d207e252076a5d.zip
vgsp-sema r563: stall-watchdog self-heal (forced consume after 20 s of no progress)
Every remaining frozen-pump shape (r562: STALL-DUMP no entry consumed for 20 s, held=99 opdef=150/11/3 frozen, pool_dual=0 conflicts=1) has the same end state: some hold condition keeps winning and the walk breaks on the same entry forever, whichever hole was closed last (r548..r558 each closed one). Add the single backstop that cannot be out-run: when the r539 stall watchdog fires (20 s without consuming a GPFIFO entry while withheld work exists), arm a budget of 4 forced consumes; the next hold decisions that would park an entry are bypassed (opdef hold, no-capture hold, busy-defer re-hold, data-stalled hold), the entry is consumed with its withheld releases applied forward-only and the GR QMD completion authored by the existing tail, and the client's wait advances. Bounded by the dump cadence (<=4/boot) and the per-arming budget, so a healthy boot never sees it; each bypass logs one STALL-HEAL line. This turns 'the client stalls forever' into 'the client completes with the best-effort data the guards would have fallen back to anyway'.
Diffstat (limited to 'wiki/open-iov.org/index.php/File:Intel_GVT-g_Capabilities.png.html')
0 files changed, 0 insertions, 0 deletions