* [PATCH] drm/msm/dpu: make "vblank timeout" more useful
@ 2024-01-05 23:50 Dmitry Baryshkov
2024-01-25 17:14 ` Abhinav Kumar
0 siblings, 1 reply; 2+ messages in thread
From: Dmitry Baryshkov @ 2024-01-05 23:50 UTC (permalink / raw)
To: Rob Clark, Abhinav Kumar, Sean Paul, Marijn Suijten,
David Airlie, Daniel Vetter
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, Dmitry Baryshkov
We have several reports of vblank timeout messages. However after some
debugging it was found that there might be different causes to that.
Include the actual CTL_FLUSH value into the timeout message. This allows
us to identify the DPU block that gets stuck.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
index d0f56c5c4cce..fb34067ab6af 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
@@ -489,7 +489,7 @@ static int dpu_encoder_phys_vid_wait_for_commit_done(
(hw_ctl->ops.get_flush_register(hw_ctl) == 0),
msecs_to_jiffies(50));
if (ret <= 0) {
- DPU_ERROR("vblank timeout\n");
+ DPU_ERROR("vblank timeout: %x\n", hw_ctl->ops.get_flush_register(hw_ctl));
return -ETIMEDOUT;
}
---
base-commit: 39676dfe52331dba909c617f213fdb21015c8d10
change-id: 20240106-fd-dpu-debug-timeout-e917f0bc8063
Best regards,
--
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] drm/msm/dpu: make "vblank timeout" more useful
2024-01-05 23:50 [PATCH] drm/msm/dpu: make "vblank timeout" more useful Dmitry Baryshkov
@ 2024-01-25 17:14 ` Abhinav Kumar
0 siblings, 0 replies; 2+ messages in thread
From: Abhinav Kumar @ 2024-01-25 17:14 UTC (permalink / raw)
To: Dmitry Baryshkov, Rob Clark, Sean Paul, Marijn Suijten,
David Airlie, Daniel Vetter
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
On 1/5/2024 3:50 PM, Dmitry Baryshkov wrote:
> We have several reports of vblank timeout messages. However after some
> debugging it was found that there might be different causes to that.
> Include the actual CTL_FLUSH value into the timeout message. This allows
> us to identify the DPU block that gets stuck.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
> index d0f56c5c4cce..fb34067ab6af 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
> @@ -489,7 +489,7 @@ static int dpu_encoder_phys_vid_wait_for_commit_done(
> (hw_ctl->ops.get_flush_register(hw_ctl) == 0),
> msecs_to_jiffies(50));
> if (ret <= 0) {
> - DPU_ERROR("vblank timeout\n");
> + DPU_ERROR("vblank timeout: %x\n", hw_ctl->ops.get_flush_register(hw_ctl));
> return -ETIMEDOUT;
> }
Nothing wrong with this change.
But I dont know how much information this is giving to really find out
what is causing the vblank timeout. Sure, we know which flush bit is
actually stuck but we dont know why its stuck.
We should add a logic here to get the snapshot on the first vblank
timeout that way we avoid excessive capture as well similar to the other
fatal locations of calling snapshot.
>
>
> ---
> base-commit: 39676dfe52331dba909c617f213fdb21015c8d10
> change-id: 20240106-fd-dpu-debug-timeout-e917f0bc8063
>
> Best regards,
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-01-25 17:14 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-05 23:50 [PATCH] drm/msm/dpu: make "vblank timeout" more useful Dmitry Baryshkov
2024-01-25 17:14 ` Abhinav Kumar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®