mbox series

[0/5] drm: Fix fb changes for async updates

Message ID 20190304144909.6267-1-helen.koike@collabora.com (mailing list archive)
Headers show
Series drm: Fix fb changes for async updates | expand

Message

Helen Mae Koike Fornazier March 4, 2019, 2:49 p.m. UTC
Hello,

This series is a first attempt to fix 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 the first patch to understand how it works.

I tested on the rockchip and on i915 (with a patch I am still working on for
replacing cursors by async update), 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 and my vc4
raspberry pi is not recognizing my display for some reason, I would appreciate
if anyone could help me testing those.
I also separated the patches per platform to be easier to get the tested-by tags,
please let me know if it should be a single patch.

Also, I added CC stable (as the "drm: Block fb changes for async plane updates"
was also CCed to stable).
I am not used to CC stable, please let me know if anything is off.

Thanks!
Helen


Helen Koike (5):
  drm: don't block fb changes for async plane updates
  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

 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  3 +-
 drivers/gpu/drm/drm_atomic_helper.c           | 20 ++++-----
 drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c    |  4 ++
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c   | 42 +++++++++++--------
 drivers/gpu/drm/vc4/vc4_plane.c               |  2 +-
 5 files changed, 40 insertions(+), 31 deletions(-)

Comments

Helen Mae Koike Fornazier March 6, 2019, 1:04 a.m. UTC | #1
On 3/4/19 11:49 AM, Helen Koike wrote:
> Hello,
> 
> This series is a first attempt to fix 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 the first patch to understand how it works.
> 
> I tested on the rockchip and on i915 (with a patch I am still working on for
> replacing cursors by async update), 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 and my vc4
> raspberry pi is not recognizing my display for some reason, I would appreciate
> if anyone could help me testing those.

I managed to test on vc4, tests look good to me, please see
https://patchwork.kernel.org/patch/10837857/ for more details.

Thanks
Helen

> I also separated the patches per platform to be easier to get the tested-by tags,
> please let me know if it should be a single patch.
> 
> Also, I added CC stable (as the "drm: Block fb changes for async plane updates"
> was also CCed to stable).
> I am not used to CC stable, please let me know if anything is off.
> 
> Thanks!
> Helen
> 
> 
> Helen Koike (5):
>   drm: don't block fb changes for async plane updates
>   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
> 
>  .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  3 +-
>  drivers/gpu/drm/drm_atomic_helper.c           | 20 ++++-----
>  drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c    |  4 ++
>  drivers/gpu/drm/rockchip/rockchip_drm_vop.c   | 42 +++++++++++--------
>  drivers/gpu/drm/vc4/vc4_plane.c               |  2 +-
>  5 files changed, 40 insertions(+), 31 deletions(-)
>