summaryrefslogtreecommitdiffstats
path: root/tools/gr-regs/reg_sampler.py
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-27 17:05:10 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-27 17:05:10 -0400
commit00319db208aa8fa90b6ad03ef154815ed86d8225 (patch)
treeaa7c31f2cd99b3d9882f351188c915d0b67d192f /tools/gr-regs/reg_sampler.py
parent28c8c8e9635a072abe52b08b30b6d9607cfb0768 (diff)
downloadopen-iov-00319db208aa8fa90b6ad03ef154815ed86d8225.tar.gz
open-iov-00319db208aa8fa90b6ad03ef154815ed86d8225.zip
vgsp: xw-mirror writes one learned frame-step ahead of the counter
r866: the mirror tracked perfectly yet every wait still paid the driver's ~3 s re-check sleep (one '(0)' success print every 20-80 s; the GL client hung minutes on its X socket). Cause: the driver increments its counter and then enters the wait; a member that only tracks the counter always loses that entry-check race (mirror wakes <=3 ms after the change; the driver probes within microseconds), so the check fails and the driver sleeps out its retry interval. Writing member = counter + last-observed- delta (learned from each counter change, 0 until the first) makes the driver's own increment land exactly on the pre-written member value, so the first probe after submission succeeds and frames complete at the driver's pace.
Diffstat (limited to 'tools/gr-regs/reg_sampler.py')
0 files changed, 0 insertions, 0 deletions