Repository navigation
Attribute Zoom video handoff mutex and thumbnail CPU scopes (#823) - #831
Merged
Merged
Conversation
iamfatness
force-pushed
the
codex/zoom-handoff-scope-823
branch
from
October 8, 2026 02:02
aabbdb1 to
73d8773
Compare
iamfatness
marked this pull request as ready for review
October 8, 2026 02:25
This was referenced Oct 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The #823 mixed-source tests still exceed CPU-tail/deadline gates. Add independent default-off CPU attribution for Zoom configuration/roster/decoded-frame fetch and video publication: lock wait versus body, with thumbnail encoding measured as a subset of publication-body time. Fixed numeric records carry same-domain start/acquire/end timestamps and use the existing bounded asynchronous logger after the local guard releases. No ownership, GPU, playout, thumbnail, quality or buffering behavior changes.
The first real consumers are those runtime paths and the maintained mixed-source QA harness. It pins the explicit flags, retains logger refusal counters, and offers normal logging without changing the historical verbose default. The trace-overhead checker now rejects unknown/mismatched logging choices. Preserve thumbnail timestamp evaluation order and stale-generation behavior.
Validation on f5987f2 (native b08b1f3018fcbb92f407b7abcecf001c787f449f): Release build; all 1,520 native tests pass (external NDI/network opt-ins were not executed); 59 runtime/state tests pass with the flag enabled; 24 portable monitor/timing tests and diff checks pass. All 17 exact-head CI checks pass. Superseded unfinished branch runs were canceled to clear the queue; no current-head failure was waived.
The final clean normal-logging pair delivered 14,410 measured Program packets with zero native-buffer, recording or raw-trace loss. It observed 290 slow publication records and 85 slow fetch waits; 76 waits overlapped a publication body for at least 95% of their duration. Those selective CPU records include warmup/shutdown. Both processes reported 7 dropped logger records (0 truncated/sink failures); absent scopes cannot exclude a stall. Raw traces finalized with zero losses/export failures. Seven/five post-measurement-window Program misses are retained in the complete traces, separately from the measured verdict.
CPU-tail qualification still fails: inline p99 bounds 9.792–10.065 ms / p99.9 10.903–14.223 ms; isolated p99 8.198–8.465 ms / p99.9 9.211–13.245 ms. The earlier normal-logging pair retained 34/27 render deadline misses despite zero output loss. A clean average or zero measured losses does not close the parent gates.
This supports the shared-runtime-mutex/optional-thumbnail bottleneck filed as #832, with an off-lock packaging repair proposal and owner ranking pending. It does not attribute the separate retained 77 ms encoder stall/five delivery losses, establish kernel wait owner/GPU duration/driver cause, or complete the parent acceptance requirements. Installed/receiver/display, actual content latency, A/V, trace cost and fleet gates remain open. No beta, defaults, settings or installation changed.