On Sun, 01 Nov 2026 09:53:57 -0300, Maíra Canal wrote:
> v3d_csd_job_timedout() decides whether a compute job made progress by
> comparing CSD_CURRENT_CFG4, the number of batches the dispatcher still
> has to start, against the value saved at the previous timeout. That
> saved value is never initialized, so it is zero on the first timeout.
>
> On V3D 7.1.6 and later, CFG4 counts down to zero once the dispatcher has
> started the last batch, but the dispatch keeps running until the batches
> in flight complete. If the first timeout fires in that window, the
> handler sees no change and resets the GPU while the job is about to
> complete. For example, this happens with long dispatches that only keep a
> single supergroup in flight.
>
> [...]
Applied to drm-misc-fixes, thanks!
[1/2] drm/v3d: Initialize timedout_batches when running a CSD job
commit: 0afdbdd5b1af729108de8f893d179c3b99eac29d
I'll apply the second patch to drm-misc-next after the back merge.
Best regards,
- Maíra