summaryrefslogtreecommitdiffstats
path: root/scripts/setup_guest_driver.sh
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-30 20:42:50 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-30 20:42:50 -0400
commitdf28bd051cbcf8b2d9d72bfe4844dd52e2fe1c46 (patch)
treec89b619075474d432453367402bb84c0cde36a47 /scripts/setup_guest_driver.sh
parent82173823d526967c57b1f4581bfc9341f5b1f281 (diff)
downloadopen-iov-df28bd051cbcf8b2d9d72bfe4844dd52e2fe1c46.tar.gz
open-iov-df28bd051cbcf8b2d9d72bfe4844dd52e2fe1c46.zip
sema-svc: consume rewind replays and sweep-delivered CE entries at once
Two stalls serialized the runtime client's init into one 8 s CE grace window per push: - a pin-batch rewind replays recently consumed GPFIFO slots; re-examining a consumed slot runs the rescue and then holds it for the full grace window again (observed: the same VA 'skipped after 8000 ms grace' twice, 38 s apart). The pump now records each consumed slot with the put value it was consumed at (32-entry per-channel replay ring, persisted across passes) and consumes a replayed slot whose producing put has not advanced immediately. - the content sweep applies releases from RAM pages before the pump reads their entries, so the pool advances past the entry's payload while it is pending. entry_want (recorded on first examination) now detects that on both the unreadable-rescue and the readable-no-release paths and consumes the entry instead of waiting the grace window. Evidence: real-release watcher cycle, pool semaphore advances no longer gated at 8 s intervals once the replay skip engages.
Diffstat (limited to 'scripts/setup_guest_driver.sh')
0 files changed, 0 insertions, 0 deletions