On 3/5/26 23:30, Leo Li wrote:
On 2026-03-04 09:20, Leo Li wrote:
So far i could not reproduce with your tracing patch applied, i could try to
use bpftrace instead but it will take some time, i am quite busy these days.
Understood. If you haven't tried already, maybe dropping the stack trace (-T)
flag is worth a shot.
- Leo
Hi Michele,
Since this issue is fairly widespread, and we're heading towards *a* fix,
I sent a reworked version of this where we save cursor-only vblank events
in a separate member in struct amdgpu_crtc, and deliver it in
amdgpu_dm_crtc_handle_vblank():
https://lore.kernel.org/amd-gfx/[email protected]/
Let me know if you get a chance to try it out! I'll also add your
Co-developed-by when merging -- I forgot to add it when sending it out.
- Leo
Reproduced today with a minimal bpftrace active but prepare_flip_isr is
inlined by the compiler so was unable to track the event ARM side (stil
have to try the offset approach)
Trace around the timeout:
142642747 commit_hw_done [tid=778834]
142642747 WAIT_FLIP ENTER [tid=778834]
10279ms silence for tid=778834 on CRTC 0
CRTC 1 continues normally throughout
142653026 WAIT_FLIP TIMEOUT waited 10278ms [tid=778834]
No dm_pflip_high_irq or DELIVER for that specific commit. CRTC 1 kept
flowing normally the entire time.
Your new patch is an approach i already tried, and in my previous
testing i still had flip timeouts, so while i think separating the
cursor events makes sense and is correct, the root cause could be
different from what i initially assumed and sending the cursor events
immediately was masking it by relieving pressure.