[PATCH] drm/amd/display: check fb of primary plane
Harry Wentland
harry.wentland at amd.com
Wed Mar 17 14:04:53 UTC 2021
On 2021-03-16 5:50 p.m., Sefa Eyeoglu wrote:
> Sometimes the primary plane might not be initialized (yet), which
> causes dm_check_crtc_cursor to divide by zero.
> Apparently a weird state before a S3-suspend causes the aforementioned
> divide-by-zero error when resuming from S3. This was explained in
> bug 212293 on Bugzilla.
>
> To avoid this divide-by-zero error we check if the primary plane's fb
> isn't NULL. If it's NULL the src_w and src_h attributes will be 0,
> which would cause a divide-by-zero.
>
> This fixes Bugzilla report 212293
> https://bugzilla.kernel.org/show_bug.cgi?id=212293>>
> Fixes: 12f4849a1cfd69f3 ("drm/amd/display: check cursor scaling")
> Signed-off-by: Sefa Eyeoglu <contact at scrumplex.net>
Thanks for your patch.
It is
Reviewed-by: Harry Wentland <harry.wentland at amd.com>
Harry
> ---
> drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 573cf17262da4e11..fbb1ac223ccbb62a 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -9267,7 +9267,8 @@ static int dm_check_crtc_cursor(struct drm_atomic_state *state,
>
> new_cursor_state = drm_atomic_get_new_plane_state(state, crtc->cursor);
> new_primary_state = drm_atomic_get_new_plane_state(state, crtc->primary);
> - if (!new_cursor_state || !new_primary_state || !new_cursor_state->fb) {
> + if (!new_cursor_state || !new_primary_state ||
> + !new_cursor_state->fb || !new_primary_state->fb) {
> return 0;
> }
>
>
More information about the amd-gfx
mailing list