dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] drm/v3d: CL/CSD job timeout fixes
@ 2020-09-03 16:48 Yukimasa Sugizaki
  2020-09-03 16:48 ` [PATCH 1/3] drm/v3d: Don't resubmit guilty CSD jobs Yukimasa Sugizaki
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Yukimasa Sugizaki @ 2020-09-03 16:48 UTC (permalink / raw)
  To: dri-devel; +Cc: Yukimasa Sugizaki

From: Yukimasa Sugizaki <ysugi@idein.jp>

Hi,

The current V3D scheduler has two issues where CSD jobs are resubmitted
regardless of the previous timed-out flag, and where the timer is not
restarted for timed-out CL/CSD jobs (which we wish to continue running).
The second one is due to the DRM scheduler API change and fixed in a
similar way to [1].  A kernel command-line option to set the default
timeout value is also added.

I tested this patchset with Piglit and our CSD programs in [2].  Because
it is hard to get the current upstream kernel to work on BCM2711, I used
the kernel from rpi-5.8.y tree [3].  There still are problems where some
Piglit tests get longer time to finish running (3610 minutes to 3650
minutes in total), and some ones result in the invalid memory read
errors with unknown reasons:

[17086.230959] v3d fec00000.v3d: MMU error from client CLE (4) at 0xac1000, pte invalid
[17086.238722] v3d fec00000.v3d: MMU error from client CLE (4) at 0x1b61000, pte invalid
[18643.303188] v3d fec00000.v3d: MMU error from client L2T (0) at 0x15bff00, pte invalid
[18655.933748] v3d fec00000.v3d: MMU error from client L2T (0) at 0x15bff00, pte invalid

However, most of the CL/CSD programs are now working happily without
kernel warnings and errors.

Regards,
Sugizaki

[1] https://patchwork.kernel.org/patch/11732895/
[2] https://github.com/Idein/py-videocore6
[3] https://github.com/raspberrypi/linux/tree/rpi-5.8.y

Yukimasa Sugizaki (3):
  drm/v3d: Don't resubmit guilty CSD jobs
  drm/v3d: Correctly restart the timer when progress is made
  drm/v3d: Add job timeout module param

 drivers/gpu/drm/v3d/v3d_sched.c | 62 +++++++++++++++++++++++++++++++++--------
 1 file changed, 51 insertions(+), 11 deletions(-)

--
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 11+ messages in thread
* [PATCH 0/3] drm/v3d: CL/CSD job timeout fixes
@ 2020-09-04  8:15 Yukimasa Sugizaki
  2020-09-04  8:15 ` [PATCH 3/3] drm/v3d: Add job timeout module param Yukimasa Sugizaki
  0 siblings, 1 reply; 11+ messages in thread
From: Yukimasa Sugizaki @ 2020-09-04  8:15 UTC (permalink / raw)
  To: dri-devel; +Cc: Yukimasa Sugizaki

Hi,

The current V3D scheduler has two issues where CSD jobs are resubmitted
regardless of the previous timed-out flag, and where the timer is not
restarted for timed-out CL/CSD jobs (which we wish to continue running).
The second one is due to the DRM scheduler API change and fixed in a
similar way to [1].  A kernel command-line option to set the default
timeout value is also added.

I tested this patchset with Piglit and our CSD programs in [2].  Because
it is hard to get the current upstream kernel to work on BCM2711, I used
the kernel from rpi-5.8.y tree [3].  There still are problems where some
Piglit tests get longer time to finish running (3610 minutes to 3650
minutes in total), and some ones result in the invalid memory read
errors with unknown reasons:

[17086.230959] v3d fec00000.v3d: MMU error from client CLE (4) at 0xac1000, pte invalid
[17086.238722] v3d fec00000.v3d: MMU error from client CLE (4) at 0x1b61000, pte invalid
[18643.303188] v3d fec00000.v3d: MMU error from client L2T (0) at 0x15bff00, pte invalid
[18655.933748] v3d fec00000.v3d: MMU error from client L2T (0) at 0x15bff00, pte invalid

However, most of the CL/CSD programs are now working happily without
kernel warnings and errors.

Regards,
Sugizaki

(Re-sending this series because I failed to post the previous one to
dri-devel.)

[1] https://patchwork.kernel.org/patch/11732895/
[2] https://github.com/Idein/py-videocore6
[3] https://github.com/raspberrypi/linux/tree/rpi-5.8.y

Yukimasa Sugizaki (3):
  drm/v3d: Don't resubmit guilty CSD jobs
  drm/v3d: Correctly restart the timer when progress is made
  drm/v3d: Add job timeout module param

 drivers/gpu/drm/v3d/v3d_sched.c | 62 +++++++++++++++++++++++++++++++++--------
 1 file changed, 51 insertions(+), 11 deletions(-)

--
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2021-02-11  6:31 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-03 16:48 [PATCH 0/3] drm/v3d: CL/CSD job timeout fixes Yukimasa Sugizaki
2020-09-03 16:48 ` [PATCH 1/3] drm/v3d: Don't resubmit guilty CSD jobs Yukimasa Sugizaki
2021-02-04 13:54   ` Chema Casanova
2020-09-03 16:48 ` [PATCH 2/3] drm/v3d: Correctly restart the timer when progress is made Yukimasa Sugizaki
2020-09-03 16:48 ` [PATCH 3/3] drm/v3d: Add job timeout module param Yukimasa Sugizaki
2021-02-04 18:09   ` Chema Casanova
2021-02-04 19:34     ` Eric Anholt
2021-02-05 12:28       ` Yukimasa Sugizaki
2021-02-10 17:59         ` Chema Casanova
2021-02-11  6:31           ` Yukimasa Sugizaki
2020-09-04  8:15 [PATCH 0/3] drm/v3d: CL/CSD job timeout fixes Yukimasa Sugizaki
2020-09-04  8:15 ` [PATCH 3/3] drm/v3d: Add job timeout module param Yukimasa Sugizaki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).