linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/5] drm: Fix fb changes for async updates
@ 2019-03-14  0:20 Helen Koike
  2019-03-14  0:20 ` [PATCH v3 1/5] drm/rockchip: fix fb references in async update Helen Koike
  2019-03-14  0:20 ` [PATCH v3 5/5] drm: don't block fb changes for async plane updates Helen Koike
  0 siblings, 2 replies; 5+ messages in thread
From: Helen Koike @ 2019-03-14  0:20 UTC (permalink / raw)
  To: dri-devel, nicholas.kazlauskas
  Cc: Heiko Stübner, Sean Paul, David Airlie, daniel.vetter,
	linux-kernel, eric, Mamta Shukla, kernel, Anthony Koo,
	Ville Syrjälä, David (ChunMing) Zhou, Maxime Ripard,
	Bhawanpreet Lakha, David Francis, amd-gfx, linux-rockchip,
	harry.wentland, andrey.grodzovsky, Leo Li, linux-arm-msm,
	Maarten Lankhorst, Helen Koike, Mikita Lipski, Sean Paul,
	linux-arm-kernel, Stéphane Marchesin, Sandy Huang,
	Tomasz Figa, Rob Clark, boris.brezillon, Daniel Vetter,
	Alex Deucher, freedreno, Christian König

Hello,

This series fixes the slow down in performance introduced by
"[PATCH v2] drm: Block fb changes for async plane updates" where async update
falls back to a sync update, causing igt failures of type:

    "CRITICAL: completed 97 cursor updated in a period of 30 flips, we
    expect to complete approximately 15360 updates, with the threshold set
    at 7680"

Please read the commit message of "drm: don't block fb changes for async
plane updates" to understand how it works.

I tested on the rockchip, on i915 and on vc4 with igt plane_cursor_legacy and
kms_cursor_legacy and I didn't see any regressions.

I couldn't test on MSM and AMD because I don't have the hardware
I would appreciate if anyone could help me testing those.

v1 link: https://patchwork.kernel.org/cover/10837847/

Thanks!
Helen

Changes in v3:
- use swap() to swap old and new framebuffers in async_update
- get the reference to old_fb and set the worker after vop_plane_atomic_update()
- add a FIXME tag for when we have multiple fbs to be released when
vblank happens.
- update commit message
- Add Reviewed-by tags
- Add TODO in drm_atomic_helper_async_commit()

Changes in v2:
- added reviewed-by tag
- update CC stable and Fixes tag
- Added reviewed-by tag
- updated CC stable and Fixes tag
- Change the order of the patch in the series, add this as the last one.
- Add documentation
- s/ballanced/balanced

Helen Koike (5):
  drm/rockchip: fix fb references in async update
  drm/amd: fix fb references in async update
  drm/msm: fix fb references in async update
  drm/vc4: fix fb references in async update
  drm: don't block fb changes for async plane updates

 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  3 +-
 drivers/gpu/drm/drm_atomic_helper.c           | 22 ++++----
 drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c    |  4 ++
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c   | 51 ++++++++++---------
 drivers/gpu/drm/vc4/vc4_plane.c               |  2 +-
 include/drm/drm_modeset_helper_vtables.h      |  5 ++
 6 files changed, 49 insertions(+), 38 deletions(-)

-- 
2.20.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, other threads:[~2019-06-03 16:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-14  0:20 [PATCH v3 0/5] drm: Fix fb changes for async updates Helen Koike
2019-03-14  0:20 ` [PATCH v3 1/5] drm/rockchip: fix fb references in async update Helen Koike
2019-03-14  0:20 ` [PATCH v3 5/5] drm: don't block fb changes for async plane updates Helen Koike
2019-05-07 20:18   ` Sean Paul
2019-06-03 16:53     ` Helen Koike

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).